c#,GDI+绘图,中如何把窗口的图像转成图像文件?
例如如何把窗口显示的内容(指定大小范围)储存为Bitmap格式?是要form窗口的……不是整个屏幕的图像!不要截屏的那种……要真正的获取……...
例如如何把窗口显示的内容(指定大小范围)储存为Bitmap格式?
是要form窗口的……不是整个屏幕的图像!
不要截屏的那种……要真正的获取…… 展开
是要form窗口的……不是整个屏幕的图像!
不要截屏的那种……要真正的获取…… 展开
3个回答
展开全部
这个根本不是截取屏幕的啊大哥···如果你说不想用这个的话那就用上面的高人的了
//处理队列内的消息,防止截图时界面出现错图
Application.DoEvents();
this.Refresh();
//相当于点击了截屏键+Alt
SendKeys.Send("%{PRTSC}");
//线程休息1000毫秒,让进程有一定的时间处理截图图片到剪贴板的事件
System.Threading.Thread.Sleep(1000);
//如果文件夹不存在,则创建一个新的文件夹(保存截图)
if (!Directory.Exists("Screenshots"))
{
Directory.CreateDirectory("Screenshots");
}
//获取保存在剪贴板的图像,即截屏键向剪贴板发送的图像
Image I = Clipboard.GetImage();
if (I == null)
{
MessageBox.Show("截图出错,请重新尝试");
return;
}
bmp.Save("Screenshots\\" + i + ".bmp");
很久之前写的
你可以参考之
//处理队列内的消息,防止截图时界面出现错图
Application.DoEvents();
this.Refresh();
//相当于点击了截屏键+Alt
SendKeys.Send("%{PRTSC}");
//线程休息1000毫秒,让进程有一定的时间处理截图图片到剪贴板的事件
System.Threading.Thread.Sleep(1000);
//如果文件夹不存在,则创建一个新的文件夹(保存截图)
if (!Directory.Exists("Screenshots"))
{
Directory.CreateDirectory("Screenshots");
}
//获取保存在剪贴板的图像,即截屏键向剪贴板发送的图像
Image I = Clipboard.GetImage();
if (I == null)
{
MessageBox.Show("截图出错,请重新尝试");
return;
}
bmp.Save("Screenshots\\" + i + ".bmp");
很久之前写的
你可以参考之
展开全部
Rectangle rect = Screen.AllScreens[0].Bounds;
Image image = new Bitmap(rect.Width, rect.Height);
Graphics g = Graphics.FromImage(image);
g.CopyFromScreen(new Point(0, 0), new Point(0, 0), new Size(rect.Width, rect.Height));
Rectangle rect2 = this.Bounds;
Image image2 = new Bitmap(rect2.Width, rect2.Height);
Graphics g2 = Graphics.FromImage(image2);
g2.DrawImage(image, new Rectangle(0, 0, rect2.Width, rect2.Height), rect2, GraphicsUnit.Pixel);
image2.Save(@"d:\a.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
// 补充:
这就是form窗口的,不是整个屏幕,
Image image = new Bitmap(rect.Width, rect.Height);
Graphics g = Graphics.FromImage(image);
g.CopyFromScreen(new Point(0, 0), new Point(0, 0), new Size(rect.Width, rect.Height));
Rectangle rect2 = this.Bounds;
Image image2 = new Bitmap(rect2.Width, rect2.Height);
Graphics g2 = Graphics.FromImage(image2);
g2.DrawImage(image, new Rectangle(0, 0, rect2.Width, rect2.Height), rect2, GraphicsUnit.Pixel);
image2.Save(@"d:\a.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
// 补充:
这就是form窗口的,不是整个屏幕,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Control.SaveToBitmap("路径");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询