打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C#截图操作方法大全
using System.Drawing;using System.Windows.Forms; namespace WindowsFormsApplication1{    class ScreenCapture    {        private Bitmap _screenshot = null;         /// <summary>        /// 截取全屏        /// </summary>        /// <returns>返回值</returns>        public Bitmap CaptureScreen()        {            return Capture(Rectangle.Empty, false);        }         /// <summary>        /// 截取全屏并保存        /// </summary>        /// <param name="fileName">文件路径</param>        /// <returns></returns>        public Bitmap CaptureScreen(string fileName)        {            Bitmap screenshot = Capture(Rectangle.Empty, false);            saveImage(fileName, screenshot);            return screenshot;        }         /// <summary>        /// 截屏到剪切板        /// </summary>        public void CopyToClipboard()        {            if (this._screenshot != null)                Clipboard.SetImage(this._screenshot);            else if (this._screenshot == null)                MessageBox.Show("No screenshot found. Please take a screenshot first.", "Copy to Clipboard");        }         /// <summary>        /// 区域截屏        /// </summary>        /// <param name="rect">区域范围</param>        /// <returns>返回值</returns>        public Bitmap CaptureRectangle(Rectangle rect)        {            return Capture(rect, true);        }         /// <summary>        /// 区域截屏        /// </summary>        /// <param name="rect">区域范围</param>        /// <param name="fileName">文件路径</param>        /// <returns>返回值</returns>        public Bitmap CaptureRectangle(Rectangle rect, string fileName)        {            Bitmap screenshot = Capture(rect, true);            saveImage(fileName, screenshot);            return screenshot;        }         private Bitmap Capture(Rectangle rect, bool isRect)        {            int screenWidth = Screen.PrimaryScreen.Bounds.Width;            int screenHeight = Screen.PrimaryScreen.Bounds.Height;             Bitmap screenshot = null;             if(!isRect)                screenshot = new Bitmap(screenWidth, screenHeight);            else if(isRect)                screenshot = new Bitmap(rect.Width, rect.Height);             Graphics g = Graphics.FromImage(screenshot);            if (!isRect)            {                g.CopyFromScreen(Point.Empty, Point.Empty, screenshot.Size);            }            else if (isRect)            {                g.CopyFromScreen(new Point(rect.X, rect.Y), Point.Empty, rect.Size);            }             this._screenshot = screenshot;             return screenshot;        }         private void saveImage(string fileName, Bitmap screenshot)        {            string ext = System.IO.Path.GetExtension(fileName);;            ext = ext.ToLower();             if (ext == ".jpg" || ext == ".jpeg")                screenshot.Save(fileName, System.Drawing.Imaging.ImageFormat.Jpeg);            else if(ext == ".gif")                screenshot.Save(fileName, System.Drawing.Imaging.ImageFormat.Gif);            else if(ext == ".png")                screenshot.Save(fileName, System.Drawing.Imaging.ImageFormat.Png);            else if (ext == ".bmp")                screenshot.Save(fileName, System.Drawing.Imaging.ImageFormat.Bmp);            else if (ext == ".tiff")                screenshot.Save(fileName, System.Drawing.Imaging.ImageFormat.Tiff);        }    }}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
C#实现对图片文件的压缩、裁剪操作实例
Unity3d之截图方法
小红帽‘S BLOG—个人收藏夹、网文搜集、java学习、Linux技术 | 用java对屏幕拷屏
Android截屏保存png图片的实例代码
Screen Capture and Save as an Image
在C#中将.bmp转为.jpg格式的方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服