.net产生验证码
1
using System;2
using System.Collections;3
using System.ComponentModel;4
using System.Data;5
using System.Drawing;6
using System.Drawing.Drawing2D;7
using System.Drawing.Imaging;8
using System.Web;9
using System.Web.SessionState;10
using System.Web.UI;11
using System.Web.UI.WebControls;12
using System.Web.UI.HtmlControls;13
using System.IO;14

15
namespace MyCompany.Web16


{17

/**//// <summary>18
/// 验证码图片生成19
/// </summary>20
public class ValidateNum : System.Web.UI.Page21

{22
private void Page_Load(object sender, System.EventArgs e)23

{24
//生成随机生成器25
Random random=new Random();26

27
string validateNum = "";28
string s = "0123456789";29

30
for (int i = 0; i < 4; i++)31

{32
validateNum += s[random.Next(s.Length)];33
}34

35
HttpContext.Current.Session["validateNum"] = validateNum;36
// 在此处放置用户代码以初始化页面37
Bitmap image = new Bitmap((int)Math.Ceiling(validateNum.Length * 12.5), 22);38
Graphics g = Graphics.FromImage(image);39
try40

{41
//清空图片背景色42
g.Clear(Color.White);43

44
Font font = new Font("Arial", 12, (FontStyle.Bold|FontStyle.Italic));45
LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.OrangeRed, Color.OrangeRed, 1.2f, true);46
g.DrawString(validateNum, font, brush, random.Next(1) + 1, random.Next(1) + 1);47
//画图片的边框线48
g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);49
//保存图片数据50
MemoryStream stream = new MemoryStream();51
image.Save(stream, ImageFormat.Jpeg);52
//输出图片53
Response.Clear();54
Response.ContentType="image/jpeg";55
Response.BinaryWrite(stream.ToArray());56
}57
finally58

{59
g.Dispose();60
image.Dispose();61
}62
}63

64

Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码65
override protected void OnInit(EventArgs e)66

{67
//68
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。69
//70
InitializeComponent();71
base.OnInit(e);72
}73
74

/**//// <summary>75
/// 设计器支持所需的方法 - 不要使用代码编辑器修改76
/// 此方法的内容。77
/// </summary>78
private void InitializeComponent()79

{ 80
this.Load += new System.EventHandler(this.Page_Load);81
}82
#endregion83
}84
}
浙公网安备 33010602011771号