本文实例为大家分享了c#截取验证码图片的具体代码,供大家参考,具体内容如下
使用图形类中的DrawImage方法,这个方法有30种重载方式,这里只介绍一种,也是我认为最直观的一种,代码如下:
使用System.Drawing; 名称空间kq.Utils { 公共静态类CommonTools { 公共静态位图getVerifyCode(位图srcBmp,矩形矩形) {//初始化一个bmp对象,90代表图片的宽度,37代表高度 位图bmp=新的位图(90年,37); 图g=Graphics.FromImage (bmp); g。DrawImage (srcBmp 0 0,矩形,GraphicsUnit.Pixel); 返回bmp; } } } >之前其中g.DrawImage方法中第一个参数代表被截取的原图,第二第三个参数(0,0)代表在bmp中画的起点xy坐标,第四个参数矩形代表从srcBmp中截取的区域,最后一个参数GraphicsUnit.Pixel表示以上代表距离以及区域的参数的单位,像素代表像素。
以下是使用方式:
使用kq.Utils; 使用OpenQA.Selenium; 使用OpenQA.Selenium.Chrome; 使用System.Drawing; 名称空间kq { 类项目 { 静态void Main (string [] args) { 试一试 { 字符串screenImg=@“d: \ screenImg.png”; 位图fromBmp=新的位图(screenImg); 矩形section1=new矩形(936、523、90,37); 位图bmp=CommonTools。getVerifyCode (fromBmp section1); bmp.Save (@“d: \验证码bmp格式”); } (系统。异常e) { System.Console.WriteLine (e.Message); } } } } >之前假设我们要截取一张图片中的验证码部分,代码中的(936523)代表原图中验证码左上角的坐标,(90年,37)分别表示验证码的长和高,以上单位都是像素,如下图:
最后截取出来的结果如下图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
c#实现截取验证码图片