如何以编程方式需要在Windows Phone屏幕截图?
问题描述:
我需要采用Windows Phone采取截图。我不想把使用仿真器和电源+手动启动按钮截图。有没有什么可以通过编程来实现?
I need to take screenshots using Windows Phone. I don't want to take screenshots using the emulator and power+start button manually. Is there anything that can be done programmatically ?
答
下面是code:
private void ApplicationBarScreenshotButton_Click(object sender, EventArgs e)
{
var fileName = String.Format("MyImage_{0:}.jpg", DateTime.Now.Ticks);
WriteableBitmap bmpCurrentScreenImage = new WriteableBitmap((int)this.ActualWidth, (int)this.ActualHeight);
bmpCurrentScreenImage.Render(LayoutRoot, new MatrixTransform());
bmpCurrentScreenImage.Invalidate();
SaveToMediaLibrary(bmpCurrentScreenImage, fileName, 100);
MessageBox.Show("Captured image " + fileName + " Saved Sucessfully", "WP Capture Screen", MessageBoxButton.OK);
currentFileName = fileName;
}
public void SaveToMediaLibrary(WriteableBitmap bitmap, string name, int quality)
{
using (var stream = new MemoryStream())
{
// Save the picture to the Windows Phone media library.
bitmap.SaveJpeg(stream, bitmap.PixelWidth, bitmap.PixelHeight, 0, quality);
stream.Seek(0, SeekOrigin.Begin);
new MediaLibrary().SavePicture(name, stream);
}
}
当你点击按钮AppBar将采取的截图并保存图片到Windows Phone媒体库
When you click on the AppBar button it will take the screenshot and Save the picture to the Windows Phone media library