次のコードを使用して、アプリのスクリーンショットを撮っています。ただし、品質が 100 に設定されていても、最終的なスクリーンショットはまだぼやけて見えます。画質を改善する方法についての提案。
public static void SaveJPGToLib(FrameworkElement element)
{
WriteableBitmap bmpCurrentScreenImage = new WriteableBitmap((int)element.ActualWidth, (int)element.ActualHeight);
bmpCurrentScreenImage.Render(element, new MatrixTransform());
bmpCurrentScreenImage.Invalidate();
using (var stream = new MemoryStream())
{
// Save the picture to the Windows Phone media library.
bmpCurrentScreenImage.SaveJpeg(stream, bmpCurrentScreenImage.PixelWidth, bmpCurrentScreenImage.PixelHeight, 0, 100);
stream.Seek(0, SeekOrigin.Begin);
string filename = "screenshots\\" + DateTime.Now.Ticks.ToString(CultureInfo.InvariantCulture) + ".jpg";
new MediaLibrary().SavePicture(filename, stream);
}
MessageBox.Show("Saved in your media library!", "Done", MessageBoxButton.OK);
}
元のスクリーンショットと結果のスクリーンショットの違いに注意してください。
元の品質
スクリーンショット