Csharp/C#教程:c#实现winform屏幕截图并保存的示例分享

代码如下:
usingSystem.Runtime.InteropServices;
usingSystem.Drawing.Imaging;
   [System.Runtime.InteropServices.DllImportAttribute(“gdi32.dll”)]
   privatestaticexternboolBitBlt(

                   IntPtrhdcDest,  //  目标  DC的句柄  
                   intnXDest,
                   intnYDest,
                   intnWidth,
                   intnHeight,
                   IntPtrhdcSrc,    //  源DC的句柄  
                   intnXSrc,
                   intnYSrc,
                   System.Int32dwRop    //  光栅的处理数值  
                     );
 private  void  button1_Click(object  sender,  System.EventArgs  e)  
 {  
 //获得当前屏幕的大小
 Rectangle  rect  =  new  Rectangle  (  )  ;  
 rect  =  Screen.GetWorkingArea  (  this  )  ;  
 //创建一个以当前屏幕为模板的图象  
 Graphics  g1  =  this.CreateGraphics  (  )  ;  
 //创建以屏幕大小为标准的位图    
 Image  MyImage  =  new  Bitmap  (  rect.Width  ,  rect.Height  ,  g1  )  ;  
 Graphics  g2  =  Graphics.FromImage  (  MyImage  )  ;  
 //得到屏幕的DC  
 IntPtr  dc1  =  g1.GetHdc  (  )  ;  
 //得到Bitmap的DC    
 IntPtr  dc2  =  g2.GetHdc  (  )  ;  
 //调用此API函数,实现屏幕捕获  
 BitBlt  (  dc2  ,  0  ,  0  ,  rect.Width  ,  rect.Height  ,  dc1  ,  0  ,  0  ,  13369376  )  ;  
 //释放掉屏幕的DC  
 g1.ReleaseHdc  (  dc1  )  ;  
 //释放掉Bitmap的DC    
 g2.ReleaseHdc  (  dc2  )  ;  
 //以JPG文件格式来保存  
 MyImage.Save  (  @”c:/Capture.jpg”  ,  ImageFormat.Jpeg  );  
 MessageBox.Show  (  “当前屏幕已经保存为C盘的capture.jpg文件!”  )  ;  
 }

您可能感兴趣的文章:C#截图程序类似腾讯QQ截图实现代码解决C#截取当前程序窗口指定位置截图的实现方法解决C#全屏幕截图的实现方法C#实现网页截图功能对指定的网页进行截图的效果C#版c#控件截图的简单实例C#实现通过ffmpeg从flv视频文件中截图的方法C#实现类似qq的屏幕截图程序C#实现属于自己的QQ截图工具C#实现QQ截图功能及相关问题

标签: fo form winform info orm 屏幕截图 win 示例 rm for c# nf infor

关于统计数字问题的算法

C/C++编译器GCC下的常用编译命令上述就是C#学习教程:c#实现winform屏幕截图并保存的示例分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

www.ctvol.com true Article Csharp/C#教程:c#实现winform屏幕截图并保存的示例分享

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/905334.html

(0)
上一篇 2021年10月22日 下午4:33
下一篇 2021年10月22日 下午4:34

精彩推荐