首页 > 代码库 > 使用GDI绘制验证码
使用GDI绘制验证码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace 使用GDI绘制验证码B { public partial class Form1 : Form { public Form1() { InitializeComponent(); } /// <summary> /// 点击更换验证码 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void pictureBox1_Click(object sender, EventArgs e) { Random r = new Random(); string str = null;//随机数字符串 for (int i = 0; i < 5; i++) { int rNumber = r.Next(0, 10); str += rNumber; } //创建GDI对象 Bitmap bmp = new Bitmap(150,40); Graphics g = Graphics.FromImage(bmp); for (int i = 0; i < 5; i++) { Point p = new Point(i*20,0); //每个数字横坐标要有间隔 string[] fonts = {"微软雅黑","宋体","黑体","仿宋","新宋体"}; Color[] colors = {Color.Black,Color.Blue,Color.Pink,Color.Red,Color.Yellow}; g.DrawString(str[i].ToString(),new Font(fonts[r.Next(0,5)],20,FontStyle.Bold),new SolidBrush(colors[r.Next(0,5)]),p); } for (int i = 0; i < 20; i++) { Point p1 = new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height)); Point p2 = new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height)); g.DrawLine(new Pen(Brushes.Green),p1,p2); } for (int i = 0; i < 500; i++) { Point p = new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height)); bmp.SetPixel(p.X, p.Y, Color.Black); } //将图片镶嵌到PictureBox中 pictureBox1.Image = bmp; } } }
使用GDI绘制验证码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。