c#图像截取实例

2021-04-25 09:34

阅读:636

标签:系统   图像   prim   sqli   创建   create   mes   dcs   graphics   

本文实例讲述了c#图像截取的实现方法。分享给大家供大家参考。具体如下:

图像截取的相关代码如下:


代码如下:

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

Image pic = new Bitmap(this.Width, this.Height);

Graphics graphic = Graphics.FromImage(pic);

graphic.CopyFromScreen(new Point(this.Location.X, this.Location.Y), new Point(0, 0), new Size(this.Width, this.Height));

pic.Save(@”d:/test.jpeg”, ImageFormat.Jpeg);

graphic.Dispose();

}

[System.Runtime.InteropServices.DllImportAttribute(“gdi32.dll”)]

private static extern bool BitBlt(

IntPtr hdcDest, //目标设备的句柄

int nXDest, // 目标对象的左上角的X坐标

int nYDest, // 目标对象的左上角的X坐标

int nWidth, // 目标对象的矩形的宽度

int nHeight, // 目标对象的矩形的长度

IntPtr hdcSrc, // 源设备的句柄

int nXSrc, // 源对象的左上角的X坐标

int nYSrc, // 源对象的左上角的X坐标

System.Int32 dwRop // 光栅的操作值

);

[System.Runtime.InteropServices.DllImportAttribute(“gdi32.dll”)]

private static extern IntPtr CreateDC(

string lpszDriver, // 驱动名称

string lpszDevice, // 设备名称

string lpszOutput, // 无用,可以设定位”NULL”

IntPtr lpInitData // 任意的打印机数据

);

private void Form1_SizeChanged(object sender, EventArgs e)

{

}

private void button2_Click(object sender, EventArgs e)

{

this.Hide();

IntPtr dc1 = CreateDC(“DISPLAY”, null,

null, (IntPtr)null);

//创建显示器的DC

Graphics g1 = Graphics.FromHdc(dc1);

//由一个指定设备的句柄创建一个新的Graphics对象

Bitmap MyImage =

new Bitmap(Screen.PrimaryScreen.Bounds.Width,

Screen.PrimaryScreen.Bounds.Height, g1);

//根据屏幕大小创建一个与之相同大小的Bitmap对象

Graphics g2 = Graphics.FromImage(MyImage);

//获得屏幕的句柄

IntPtr dc3 = g1.GetHdc();

//获得位图的句柄

IntPtr dc2 = g2.GetHdc();

//把当前屏幕捕获到位图对象中

BitBlt(dc2, 0, 0, Screen.PrimaryScreen.Bounds.Width,

Screen.PrimaryScreen.Bounds.Height,

dc3, 0, 0, 13369376);

//把当前屏幕拷贝到位图中

g1.ReleaseHdc(dc3);

//释放屏幕句柄

g2.ReleaseHdc(dc2);

//释放位图句柄

Bitmap img = new Bitmap(MyImage, 800, 600);

//缩放图片到800*600

img.Save(“d:\\MyJpeg.jpg”, ImageFormat.Jpeg);

MessageBox.Show(“已经把当前屏幕保存到” +

“C:\\MyJpeg.jpg文件中!”);

this.Show();

}

除声明外,跑步客文章均为原创,转载请以链接形式标明本文地址
  c#图像截取实例

本文地址:  http://www.paobuke.com/develop/c-develop/pbk23433.html




相关内容

技术分享图片
C#生成漂亮验证码完整代码类
技术分享图片
浅析C# 中的类型系统(值类型和引用类型)
技术分享图片
c#几种数据库的大数据批量插入(SqlServer、Oracle、SQLite和MySql)
技术分享图片
C#画笔Pen使用路径绘制图形的方法

技术分享图片
C#画笔Pen用法实例
技术分享图片
C#读取目录下所有指定类型文件的方法
技术分享图片
C#函数式编程中的惰性求值详解
技术分享图片
win7中C#的winForm编程使用savefiledialog不能弹出保存窗体的解决方法

c#图像截取实例

标签:系统   图像   prim   sqli   创建   create   mes   dcs   graphics   

原文地址:http://www.cnblogs.com/paobuke/p/7920137.html


评论


亲,登录后才可以留言!