zoukankan      html  css  js  c++  java
  • 利用GDI+在Winfrom绘制验证码

                string yzm;  
    private void yangzhengma()
            {
                Bitmap bt = new Bitmap(70,22);//创建位图对象
                Graphics gs = Graphics.FromImage(bt);//在该位图上进行绘制
                Random rd = new Random();
                yzm="";
                for (int i = 0; i < 5; i++)
                {   yzm+=rd.next(0,10);
                    string[] frons = { "微软雅黑","宋体","黑体","仿宋","隶书"};//创建字体数组
                    Color[] color = { Color.Black, Color.Yellow, Color.Red, Color.Green, Color.Blue };
                    gs.DrawString(yzm[i].ToString(),new Font(frons[rd.Next(0,5)],12,FontStyle.Bold),new SolidBrush(color[rd.Next(0,5)]),i*12,5);
                }
                for (int i = 0; i < 10; i++)//绘制验证码中的直线
                {
                    Point pt1 = new Point(rd.Next(0,70),rd.Next(0,20));
                    Point pt2 = new Point(rd.Next(0, 70), rd.Next(0, 20));
                    Pen pen = new Pen(Color.Green);
                    gs.DrawLine(pen,pt1,pt2);
                }
                for (int i = 0; i < 100; i++)绘制验证中的白点
                {
                   
                    bt.SetPixel(rd.Next(0, 70), rd.Next(0, 20), Color.Black);
                }
                toolStripLabel5.BackgroundImage = bt;
                
            }

    程序最后只需要讲输入的字符串与string   yzm进行比较即可。设计的最终效果如图:

  • 相关阅读:
    Dynamic导出解决方案修改其XML信息
    子网格
    官方文档
    ADFS登录页面自定义
    ADFS设置Tokn生命周期
    特征工程
    Pandas
    分类决策树
    Python基本知识
    机器学习的基本概念
  • 原文地址:https://www.cnblogs.com/CoderAyu/p/8490161.html
Copyright © 2011-2022 走看看