G++版验证码
2016-01-09 20:15
337 查看
接着上一篇G++,介绍一下用它写成的验证码,代码如下:
写的不是很perfect,二八定律,有时间再研究。
THANKS FOR YOUR TIME
private void picString_Click(object sender, EventArgs e) { Random r = new Random(); string strNumber = ""; for (int i = 0; i < 5; i++) { int num = r.Next(10); //把随机数存到字符串中 strNumber += num; } //位图来存放图片 //设置位图大小 Bitmap bm = new Bitmap(252, 213); //创建对象 Graphics g = Graphics.FromImage(bm); //画验证码 //五种字体 string[] fontName = new string[] { "幼圆", "宋体", "隶书", "仿宋", "楷体" }; //颜色 Color[]color=new Color[]{Color.Red ,Color.Black ,Color.White,Color .Blue ,Color .Pink }; for (int i = 0; i < 5; i++) { Point point = new Point(i * 120, 0); //随机的字体、颜色;大小40磅 g.DrawString(strNumber, new Font(fontName [i], 40), new SolidBrush (color [i]), point); } for (int i = 0; i < 103; i++) { Point p_1 = new Point(r.Next(bm.Width)/2, r.Next(bm.Height)/2); Point p_2 = new Point(r.Next(bm.Width), r.Next(bm.Height)/2); //画线(线条颜色为灰色,起点为 (p_1, p_2) g.DrawLine(new Pen(Brushes.Gray), p_1, p_2); } for (int i = 0; i < 1510; i++) { //设置点,颜色为yellow Point p = new Point(r.Next(bm.Width), r.Next(bm.Height)); bm.SetPixel(p.X, p.Y, Color.Yellow); } //画验证码 picString.Image = bm; }
写的不是很perfect,二八定律,有时间再研究。
THANKS FOR YOUR TIME
相关文章推荐
- 支付宝支付
- DNS服务器搭建从协议到实现详解
- 欧拉函数
- HTML游戏—爱心鱼
- HDOJ 2120 Ice_cream's world I
- 深度学习之江湖~那些大神们
- 浮点数精确到小数点后一位(java)
- 【转】贝叶斯网络+马尔科夫毯 简介
- Handler研究
- 什么是窗口句柄
- Android Butterknife框架配置
- 二叉树的非递归遍历
- 周易六十四卦——履卦
- 指针与自增运算----(*p)++ 与 *p++ 与 ++*p 拨开一团迷雾
- 稀疏矩阵运算器
- UI组件之TextView及其子类(一)
- 在Activity间使用Intent传递信息
- 数据结构-String、char
- javascript类型系统之Array
- 每天学习十分钟12之Java学习笔记