从WPF应用程序窗口获取位图,可以通过以下步骤实现:
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Imaging;
public static BitmapSource GetWindowBitmap(Window window)
{
int width = (int)window.ActualWidth;
int height = (int)window.ActualHeight;
RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap(width, height, 96, 96, PixelFormats.Pbgra32);
renderTargetBitmap.Render(window);
return renderTargetBitmap;
}
public static void SaveBitmapToFile(BitmapSource bitmap, string filePath)
{
PngBitmapEncoder encoder = new PngBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(bitmap));
using (FileStream fileStream = new FileStream(filePath, FileMode.Create))
{
encoder.Save(fileStream);
}
}
这样,就可以从WPF应用程序窗口获取位图,并将其保存为图像文件了。
领取专属 10元无门槛券
手把手带您无忧上云