1 public static string MakeCode(int Num)
 public static string MakeCode(int Num)
2 {
        {
3 string[] textArray1 = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z".Split(new char[] { ',' });
            string[] textArray1 = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z".Split(new char[] { ',' });
4 string text2 = string.Empty;
            string text2 = string.Empty;
5 int num1 = 0;
            int num1 = 0;
6 Random random1 = new Random();
            Random random1 = new Random();
7 for (int num2 = 1; num2 <= Num; num2++)
            for (int num2 = 1; num2 <= Num; num2++)
8 {
            {
9 num1 = random1.Next(0,textArray1.Length);
                num1 = random1.Next(0,textArray1.Length);
10 text2 = text2 + textArray1[num1];
                text2 = text2 + textArray1[num1];
11 }
            }
12 return text2;
            return text2;
13 }
        }
14 /// <summary>
        /// <summary>
15 ///
        /// 
16 /// CREATE DATA 2007/7/2
        /// CREATE DATA 2007/7/2
17 /// MODIFY DATA 2007/7/2
        /// MODIFY DATA 2007/7/2
18 /// AUTOR:SP
        /// AUTOR:SP
19 /// METHOD:生成带有图片的验证码
        /// METHOD:生成带有图片的验证码
20 /// </summary>
        /// </summary>
21 /// <param name="Str">接收验证码的四个字符</param>
        /// <param name="Str">接收验证码的四个字符</param>
22
23 public static void MakeImg(string Str)
        public static void MakeImg(string Str)
24 {
        {
25 MemoryStream stream1 = new MemoryStream();
            MemoryStream stream1 = new MemoryStream();
26 int num1 = Convert.ToInt32((double)(Str.Length * 11.5));
            int num1 = Convert.ToInt32((double)(Str.Length * 11.5));
27 int num2 = 20;
            int num2 = 20;
28 Bitmap bitmap1 = new Bitmap(num1, num2);
            Bitmap bitmap1 = new Bitmap(num1, num2);
29 
           
30
31 Graphics graphics1 = Graphics.FromImage(bitmap1);
            Graphics graphics1 = Graphics.FromImage(bitmap1);
32
33 Color[] colorArray3 = new Color[] { Color.LightSkyBlue};//代表背景色
            Color[] colorArray3 = new Color[] { Color.LightSkyBlue};//代表背景色
34 Color[] colorArray1 = new Color[] { Color.Red };
            Color[] colorArray1 = new Color[] { Color.Red };
35 //colorArray3 = new Color[] { Color.LimeGreen, Color.LightCoral, Color.LightCyan, Color.LightGoldenrodYellow, Color.LightGray, Color.LightGreen, Color.LightPink, Color.LightSalmon, Color.LightSeaGreen, Color.LightSkyBlue, Color.LightYellow };
            //colorArray3 = new Color[] { Color.LimeGreen, Color.LightCoral, Color.LightCyan, Color.LightGoldenrodYellow, Color.LightGray, Color.LightGreen, Color.LightPink, Color.LightSalmon, Color.LightSeaGreen, Color.LightSkyBlue, Color.LightYellow };
36 Color[] colorArray2 = colorArray3;
            Color[] colorArray2 = colorArray3;
37 Random random1 = new Random();
            Random random1 = new Random();
38 Pen pen1 = new Pen(Color.LightGray, 0f);//代表图片的背景色
            Pen pen1 = new Pen(Color.LightGray, 0f);//代表图片的背景色
39 int num3 = 20;
            int num3 = 20;
40 for (int num4 = 0; num4 < num3; num4++)
            for (int num4 = 0; num4 < num3; num4++)
41 {
            {
42 pen1 = new Pen(colorArray2[random1.Next(1)], 0f);
                pen1 = new Pen(colorArray2[random1.Next(1)], 0f);
43 Point point1 = new Point(random1.Next(num1), random1.Next(num2));
                Point point1 = new Point(random1.Next(num1), random1.Next(num2));
44 Point point2 = new Point(random1.Next(num1), random1.Next(num2));
                Point point2 = new Point(random1.Next(num1), random1.Next(num2));
45 Point point3 = new Point(random1.Next(num1), random1.Next(num2));
                Point point3 = new Point(random1.Next(num1), random1.Next(num2));
46 Point point4 = new Point(random1.Next(num1), random1.Next(num2));
                Point point4 = new Point(random1.Next(num1), random1.Next(num2));
47 graphics1.DrawBezier(pen1, point1, point2, point3, point4);
                graphics1.DrawBezier(pen1, point1, point2, point3, point4);
48 }
            }
49 string text1 = string.Empty;
            string text1 = string.Empty;
50 int num5 = 2;
            int num5 = 2;
51 for (int num6 = 0; num6 < Str.Length; num6++)
            for (int num6 = 0; num6 < Str.Length; num6++)
52 {
            {
53 text1 = Str.Substring(num6, 1);
                text1 = Str.Substring(num6, 1);
54 graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(colorArray1[random1.Next(1)]), (float)num5, 2f);
                graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(colorArray1[random1.Next(1)]), (float)num5, 2f);
55 //   graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(Color.Blue),(float)num5,2f);
             //   graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(Color.Blue),(float)num5,2f);
56 num5 += 10;
                num5 += 10;
57 }
            }
58 bitmap1.Save(stream1, ImageFormat.Png);
            bitmap1.Save(stream1, ImageFormat.Png);
59 HttpContext.Current.Response.ClearContent();
            HttpContext.Current.Response.ClearContent();
60 HttpContext.Current.Response.ContentType = "image/Png";
            HttpContext.Current.Response.ContentType = "image/Png";
61 HttpContext.Current.Response.BinaryWrite(stream1.ToArray());
            HttpContext.Current.Response.BinaryWrite(stream1.ToArray());
62 graphics1.Dispose();
            graphics1.Dispose();
63 bitmap1.Dispose();
            bitmap1.Dispose();
64 HttpContext.Current.Response.End();
            HttpContext.Current.Response.End();
65 }
        }
 public static string MakeCode(int Num)
 public static string MakeCode(int Num)2
 {
        {3
 string[] textArray1 = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z".Split(new char[] { ',' });
            string[] textArray1 = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z".Split(new char[] { ',' });4
 string text2 = string.Empty;
            string text2 = string.Empty;5
 int num1 = 0;
            int num1 = 0;6
 Random random1 = new Random();
            Random random1 = new Random();7
 for (int num2 = 1; num2 <= Num; num2++)
            for (int num2 = 1; num2 <= Num; num2++)8
 {
            {9
 num1 = random1.Next(0,textArray1.Length);
                num1 = random1.Next(0,textArray1.Length);10
 text2 = text2 + textArray1[num1];
                text2 = text2 + textArray1[num1];11
 }
            }12
 return text2;
            return text2;13
 }
        }14
 /// <summary>
        /// <summary>15
 ///
        /// 16
 /// CREATE DATA 2007/7/2
        /// CREATE DATA 2007/7/217
 /// MODIFY DATA 2007/7/2
        /// MODIFY DATA 2007/7/218
 /// AUTOR:SP
        /// AUTOR:SP19
 /// METHOD:生成带有图片的验证码
        /// METHOD:生成带有图片的验证码20
 /// </summary>
        /// </summary>21
 /// <param name="Str">接收验证码的四个字符</param>
        /// <param name="Str">接收验证码的四个字符</param>22

23
 public static void MakeImg(string Str)
        public static void MakeImg(string Str)24
 {
        {25
 MemoryStream stream1 = new MemoryStream();
            MemoryStream stream1 = new MemoryStream();26
 int num1 = Convert.ToInt32((double)(Str.Length * 11.5));
            int num1 = Convert.ToInt32((double)(Str.Length * 11.5));27
 int num2 = 20;
            int num2 = 20;28
 Bitmap bitmap1 = new Bitmap(num1, num2);
            Bitmap bitmap1 = new Bitmap(num1, num2);29
 
           30

31
 Graphics graphics1 = Graphics.FromImage(bitmap1);
            Graphics graphics1 = Graphics.FromImage(bitmap1);32

33
 Color[] colorArray3 = new Color[] { Color.LightSkyBlue};//代表背景色
            Color[] colorArray3 = new Color[] { Color.LightSkyBlue};//代表背景色34
 Color[] colorArray1 = new Color[] { Color.Red };
            Color[] colorArray1 = new Color[] { Color.Red };35
 //colorArray3 = new Color[] { Color.LimeGreen, Color.LightCoral, Color.LightCyan, Color.LightGoldenrodYellow, Color.LightGray, Color.LightGreen, Color.LightPink, Color.LightSalmon, Color.LightSeaGreen, Color.LightSkyBlue, Color.LightYellow };
            //colorArray3 = new Color[] { Color.LimeGreen, Color.LightCoral, Color.LightCyan, Color.LightGoldenrodYellow, Color.LightGray, Color.LightGreen, Color.LightPink, Color.LightSalmon, Color.LightSeaGreen, Color.LightSkyBlue, Color.LightYellow };36
 Color[] colorArray2 = colorArray3;
            Color[] colorArray2 = colorArray3;37
 Random random1 = new Random();
            Random random1 = new Random();38
 Pen pen1 = new Pen(Color.LightGray, 0f);//代表图片的背景色
            Pen pen1 = new Pen(Color.LightGray, 0f);//代表图片的背景色39
 int num3 = 20;
            int num3 = 20;40
 for (int num4 = 0; num4 < num3; num4++)
            for (int num4 = 0; num4 < num3; num4++)41
 {
            {42
 pen1 = new Pen(colorArray2[random1.Next(1)], 0f);
                pen1 = new Pen(colorArray2[random1.Next(1)], 0f);43
 Point point1 = new Point(random1.Next(num1), random1.Next(num2));
                Point point1 = new Point(random1.Next(num1), random1.Next(num2));44
 Point point2 = new Point(random1.Next(num1), random1.Next(num2));
                Point point2 = new Point(random1.Next(num1), random1.Next(num2));45
 Point point3 = new Point(random1.Next(num1), random1.Next(num2));
                Point point3 = new Point(random1.Next(num1), random1.Next(num2));46
 Point point4 = new Point(random1.Next(num1), random1.Next(num2));
                Point point4 = new Point(random1.Next(num1), random1.Next(num2));47
 graphics1.DrawBezier(pen1, point1, point2, point3, point4);
                graphics1.DrawBezier(pen1, point1, point2, point3, point4);48
 }
            }49
 string text1 = string.Empty;
            string text1 = string.Empty;50
 int num5 = 2;
            int num5 = 2;51
 for (int num6 = 0; num6 < Str.Length; num6++)
            for (int num6 = 0; num6 < Str.Length; num6++)52
 {
            {53
 text1 = Str.Substring(num6, 1);
                text1 = Str.Substring(num6, 1);54
 graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(colorArray1[random1.Next(1)]), (float)num5, 2f);
                graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(colorArray1[random1.Next(1)]), (float)num5, 2f);55
 //   graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(Color.Blue),(float)num5,2f);
             //   graphics1.DrawString(text1, new Font("Arial", 12f, FontStyle.Regular), new SolidBrush(Color.Blue),(float)num5,2f);56
 num5 += 10;
                num5 += 10;57
 }
            }58
 bitmap1.Save(stream1, ImageFormat.Png);
            bitmap1.Save(stream1, ImageFormat.Png);59
 HttpContext.Current.Response.ClearContent();
            HttpContext.Current.Response.ClearContent();60
 HttpContext.Current.Response.ContentType = "image/Png";
            HttpContext.Current.Response.ContentType = "image/Png";61
 HttpContext.Current.Response.BinaryWrite(stream1.ToArray());
            HttpContext.Current.Response.BinaryWrite(stream1.ToArray());62
 graphics1.Dispose();
            graphics1.Dispose();63
 bitmap1.Dispose();
            bitmap1.Dispose();64
 HttpContext.Current.Response.End();
            HttpContext.Current.Response.End();65
 }
        } 
                    
                     
                    
                 
                    
                 
 
        
 
             
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号