基于C#实现的屏幕指定区域截屏代码

 更新时间:2014年01月13日 15:29:18   作者:  
这篇文章主要介绍了C#实现的屏幕指定区域截屏代码,有需要的朋友可以参考一下

以前在别的地方见过一个通过调用系统API实现屏幕截图的例子,从内心来说我不太喜欢在C#代码中出现这种情况,现在什么都讲“和谐”,我觉得这种做法就是破坏了我们的“和谐”代码,呵呵,开玩笑,有的时候,不通过系统API确实难以做到的。

下面讲述的就是怎么通过纯C#来实现屏幕截图,代码如下:

复制代码 代码如下:

//截取全屏图象
        private void btnFullScreen_Click(object sender, EventArgs e)
        {
            //创建图象,保存将来截取的图象
            Bitmap image = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
            Graphics imgGraphics = Graphics.FromImage(image);
            //设置截屏区域 柯乐义
            imgGraphics.CopyFromScreen(0, 0, 0, 0, new Size(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height));
            //保存
            SaveImage(image);
        }

//保存图象文件
        private void SaveImage(Image image)
        {
            if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
            {
                string fileName = saveFileDialog.FileName;
                string extension = Path.GetExtension(fileName);
                if (extension == ".jpg")
                {
                    image.Save(fileName, ImageFormat.Jpeg);
                }
                else
                {
                    image.Save(fileName, ImageFormat.Bmp);
                }
            }
        }

这段代码其实很简单,可以设置截屏区域的位置和大小,只不过只能在.net 2.0环境中才能运行。本人正在进一步完善实现拖动拖动截屏技术,类似于QQ中的截屏办法,正在攻关中,如果完成就向大家公布源代码。

相关文章

  • C# 数组实例介绍(图文)

    C# 数组实例介绍(图文)

    数组即是一组相同类型组合在一起,使用一个通用的名称,通过分配的下标访问的数据集合中的元素。
    2014-08-08
  • c# 三种方法调用WebService接口

    c# 三种方法调用WebService接口

    这篇文章主要介绍了c# 三种方法调用WebService接口的相关资料,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • 利用C#开发浏览器扩展的全过程记录

    利用C#开发浏览器扩展的全过程记录

    做web开发的同学,经常会用到各种chrome浏览器插件,那么我们寄几怎么开发一个插件呢(其实是浏览器扩展)?这篇文章主要给大家介绍了关于利用C#开发浏览器扩展的相关资料,需要的朋友可以参考下
    2021-07-07
  • HTML文本框的值改变后触发后台代码的方法

    HTML文本框的值改变后触发后台代码的方法

    asp.net用日期插件,当选中一个日期时触发一个事件,以查询当前日期的数据。这是要跟数据库交互的。先贴出控件代码:
    2013-04-04
  • C#装箱和拆箱原理详解

    C#装箱和拆箱原理详解

    这篇文章通过图例主要介绍了C#装箱和拆箱原理,内容很简单,感兴趣的小伙伴们可以参考一下
    2015-10-10
  • C#学习笔记- 浅谈数组复制,排序,取段,元组

    C#学习笔记- 浅谈数组复制,排序,取段,元组

    下面小编就为大家带来一篇C#学习笔记- 浅谈数组复制,排序,取段,元组。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • C#中委托的基本概念介绍

    C#中委托的基本概念介绍

    这篇文章主要介绍了C#中委托的基本概念介绍,本文讲解了委托的使用、委托类型和委托实例、委托的合并和删除、委托是不易变的、委托调用列表、GetInvocationList等内容,需要的朋友可以参考下
    2015-02-02
  • C#ComboBox控件“设置 DataSource 属性后无法修改项集合”的解决方法

    C#ComboBox控件“设置 DataSource 属性后无法修改项集合”的解决方法

    这篇文章主要介绍了C#ComboBox控件“设置 DataSource 属性后无法修改项集合”的解决方法 ,需要的朋友可以参考下
    2019-04-04
  • C# WinForm-Timer控件的使用

    C# WinForm-Timer控件的使用

    这篇文章主要介绍了C# WinForm-Timer控件的使用,帮助大家更好的理解和学习c# winform,感兴趣的朋友可以了解下
    2020-11-11
  • Unity3D控件Easytouch控制主角移动

    Unity3D控件Easytouch控制主角移动

    这篇文章主要为大家详细介绍了Unity3D控件Easytouch控制主角移动,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02

最新评论