捕获窗口形成图像

问题描述 投票:-1回答:2

我知道这个问题之前已经得到了回答。但没有一个答案是正确的。如何捕获窗体的图像并保存。我用这个:

Bitmap bmp = new Bitmap(this.Width, this.Height);
this.DrawToBitmap(bmp, new Rectangle(Point.Empty, bmp.Size));
bmp.Save(@"C://Desktop//sample.png",ImageFormat.Png);

但得到错误:

GDI +中发生了一般错误

我也读过这个错误,但没有一个建议对我有用!请帮忙

c# capture
2个回答
5
投票

问题出在bmp.Save(@"C://Desktop//sample.png",ImageFormat.Png);

首先它必须是@“C:\ Desktop \ sample.png”,你不需要用verbatim string转义任何东西。

第二,确保路径正确并且您有权写入。

第三,Sayse指出配置位图。

using(Bitmap bmp = new Bitmap(this.Width, this.Height))
{
    this.DrawToBitmap(bmp, new Rectangle(Point.Empty, bmp.Size));
    bmp.Save(@"C:\Desktop\sample.png",ImageFormat.Png); // make sure path exists!
}

0
投票

您的路径格式错误。应该:

bmp.Save("C:\\Desktop\\sample.png",ImageFormat.Png);

更重要的是 - 检查文件夹是否存在

© www.soinside.com 2019 - 2024. All rights reserved.