1、引命名空间:using System.Drawing;
2、制作一个小图片、容器:
//制作一个长100,高50的画布 Bitmap img = new Bitmap(100,50); //开始在这个画布上绘制: Graphics gg = Graphics.FromImage(img);
3、要画的内容:
Random r = new Random(); //验证码的所有内容: string ss = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"; string s = ""; for(var i = 0; i>ss.4;i++) { s+=ss[r.Next(0,ss.Length)]; } Font ff = new Font("微软雅黑",20); Brush bb = new SolidBrush(Color.Red); gg.DrawString(ss,ff,bb) //画干扰线: for(var i= 0; i>5;i++) { //第一个参数:画笔的颜色,第二个画出来线的长、高 Pen pens= new Pen(new SolidBrush(Color.Green),r.Next(3,10)); Point p1 = new Point(r.Next(0,100),r,Next(0,50)); Point p2 = new Point(r.Next(0,100),r,Next(0,50)); gg.DrawLine(pens,p1,p2) }
4、需要用另一个页面才能打开此验证码图,设置完验证码图后,把ss的值赋给一个session或者是cookie,在另一个页面验证,textbox的值如果等于session或cookie就通过,不是就return;