国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#實現截取驗證碼圖片

2020-01-24 00:12:13
字體:
來源:轉載
供稿:網友

本文實例為大家分享了C#截取驗證碼圖片的具體代碼,供大家參考,具體內容如下

使用Graphics類中的DrawImage方法,這個方法有30種重載方式,這里只介紹一種,也是我認為最直觀的一種,代碼如下:

using System.Drawing;namespace kq.Utils{ public static class CommonTools {  public static Bitmap getVerifyCode(Bitmap srcBmp, Rectangle rectangle)  {   //初始化一個bmp對象,90代表圖片的寬度,37代表高度   Bitmap bmp = new Bitmap(90, 37);   Graphics g = Graphics.FromImage(bmp);   g.DrawImage(srcBmp, 0, 0, rectangle, GraphicsUnit.Pixel);   return bmp;  } }}

其中g.DrawImage方法中第一個參數代表被截取的原圖,第二第三個參數(0,0)代表在bmp中畫的起點xy坐標,第四個參數rectangle代表從srcBmp中截取的區域,最后一個參數GraphicsUnit.Pixel表示以上代表距離以及區域的參數的單位,Pixel代表像素。

以下是使用方式:

using kq.Utils;using OpenQA.Selenium;using OpenQA.Selenium.Chrome;using System.Drawing;namespace kq{ class Program {  static void Main(string[] args)  {   try   {    string screenImg = @"d:/screenImg.png";    Bitmap fromBmp = new Bitmap(screenImg);    Rectangle section1 = new Rectangle(936, 523, 90, 37);    Bitmap bmp = CommonTools.getVerifyCode(fromBmp, section1);    bmp.Save(@"d:/驗證碼.bmp");   }   catch (System.Exception e)   {    System.Console.WriteLine(e.Message);   }  } }}

假設我們要截取一張圖片中的驗證碼部分,代碼中的(936,523)代表原圖中驗證碼左上角的坐標,(90,37)分別表示驗證碼的長和高,以上單位都是像素,如下圖:

最后截取出來的結果如下圖:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浑源县| 垫江县| 宁南县| 玉龙| 昆山市| 即墨市| 昌宁县| 佛坪县| 东丽区| 新乡县| 阳新县| 琼结县| 清远市| 平江县| 涡阳县| 滦平县| 黔江区| 长子县| 甘德县| 虎林市| 来宾市| 喀喇| 武汉市| 福海县| 庆元县| 南投县| 静安区| 齐河县| 隆安县| 玉溪市| 甘泉县| 武乡县| 二连浩特市| 苏尼特右旗| 东山县| 兴隆县| 太白县| 龙游县| 贵州省| 改则县| 富宁县|