c#实现截取验证码图片

  

本文实例为大家分享了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 #实现截取验证码图片

  

最后截取出来的结果如下图:

  

 C #实现截取验证码图片

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

c#实现截取验证码图片