WPF截屏小问题,Graphics.CopyFromScreen方法参数没懂其含义

pengcong005 2012-09-19 10:35:27

System.Drawing.Rectangle rc = SystemInformation.VirtualScreen;
var bitmap = new Bitmap(rc.Width, rc.Height, PixelFormat.Format32bppArgb);
using (Graphics g = Graphics.FromImage(bitmap))
{
g.CopyFromScreen(rc.X, rc.Y, 0, 0, rc.Size, CopyPixelOperation.SourceCopy);
}
return bitmap;


这是C#里一段截取全屏的代码, 现在我获取了鼠标坐标 ,想截取鼠标附近区域的图像, 但是CopyFromScreen方法的参数我百思不得其解,前面两个是源矩形的X和Y坐标,后面两个是目标矩形的X和Y坐标, 我没明白它们两个之间的关系,。截图的宽度和长度为何它们不用指定。。。。请做过截屏的朋友们帮帮我。 谢谢了
...全文
732 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cl000282 2015-06-10
  • 打赏
  • 举报
回复
var bitmap = new Bitmap(rc.Width, rc.Height, PixelFormat.Format32bppArgb); ---这里指定了画布的大小 using (Graphics g = Graphics.FromImage(bitmap)) { g.CopyFromScreen(rc.X, rc.Y, 0, 0, rc.Size, CopyPixelOperation.SourceCopy);--这里 rc.size 指定了截图的大小 } return bitmap; 这里画布大小刚好等于截图大小。 截图大小也可一个改成其他的
一生所爱岱 2015-06-01
  • 打赏
  • 举报
回复
能把改好的代码发给我看看么。。我也正在做这个
huwei001982 2012-09-19
  • 打赏
  • 举报
回复
宽度和长度就是你写的两个为0的参数。。。。。

宽度和长度都为0, 能截屏成功嘛?
pengcong005 2012-09-19
  • 打赏
  • 举报
回复
成功了。。CopyFromScreen方法是截屏+截图一体的。。只需要设置Rectangle就行了
宝_爸 2012-09-19
  • 打赏
  • 举报
回复

110,825

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧