zoukankan      html  css  js  c++  java
  • 用GDI+画验证码

    1、新建一个窗体应用程序,在上面拖一个pictureBox对象,为其添加单击事件

    2、创建GDI对象、产生随机数画入图片中、画线条、最后将图片到pictureBox中,代码如下:

     1  private void pictureBox1_Click(object sender, EventArgs e)
     2         {
     3             //创建GDI对象
     4             Bitmap bmp = new Bitmap(150,40);
     5             Graphics g = Graphics.FromImage(bmp);
     6 
     7            //产生随机数并画入图片中
     8             Random r = new Random();
     9             string str = "";
    10             for (int i = 0; i < 5;i++ )
    11             {
    12                 str += r.Next(0,10);
    13             }
    14             for (int i = 0; i < 5; i++) 
    15             {
    16                 Point p = new Point(i*20,0);
    17                 string[] fonts = { "微软雅黑", "宋体", "黑体", "隶书", "仿宋" };
    18                 Color[] colors = { Color.Yellow,Color.Blue,Color.Black,Color.Red,Color.Pink};
    19                 g.DrawString(str[i].ToString(),new Font(fonts[r.Next(0,5)],20,FontStyle.Bold),new SolidBrush(colors[r.Next(0,5)]),p);
    20             
    21             }
    22 
    23             //画线
    24             for (int i = 0; i < 20; i++)
    25             {
    26                 Point p1 = new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height));
    27                 Point p2 = new Point(r.Next(0,bmp.Width),r.Next(0,bmp.Height));
    28                 g.DrawLine(new Pen(Brushes.Green),p1,p2);
    29             }
    30 
    31             //将图片镶嵌到pictureBox中
    32             pictureBox1.Image = bmp;
    33 
    34         }
  • 相关阅读:
    VC环境OpenSSL编译笔记
    手动造工具TaskJobManage
    Java性能分析工具
    ES77
    Flink消费kafka
    阻塞对列
    C# 超时事件
    毕业前做一件事
    PID控制器——控制网络爬虫速度
    2.5 OpenEuler 中C与汇编的混合编程(选做)
  • 原文地址:https://www.cnblogs.com/zhengwei-cq/p/6815971.html
Copyright © 2011-2022 走看看