后台文件:
1使用系统;
2使用系统数据;
3使用系统.配置;
4使用System.Collections;
5使用System.Drawing;
6使用System.Web;
7使用System.Web.Security;
8使用System.Web.UI;
9使用System.Web.UI.WebControls;
10使用System.Web.UI.WebControls.WebParts;
11使用System.Web.UI.HtmlControls;
12
13公共部分类Default2:System.Web.UI.Page
14{
15 protected void Page_Load(对象发送者,EventArgs e)
16{
17 if(!this.IsPostBack)
18{
19 this.GenImg(this.GenCode(4));
20}
21
22}
23 //产生随机字符串
24 私有字符串 GenCode(int num)
25{
26 string[] source={"0","1","2","3","4","5","6","7","8","9",
27 “A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”、“L”、“米”,“N”,
28 "O"、"P"、"Q"、"R"、"S"、"T"、"U"、"V"、"W"、"X"、"Y"、"Z"};
29 字符串代码=“”;
30 随机 rd=new Random();
31 for(int i=0;i < num;i++)
32{
33 代码 += source[rd.Next(0,source.Length)];
34}
35 返回码;
36}
37
38 //生成图片
39 private void GenImg(字符串代码)
40{
41 Bitmap myPalette = new Bitmap(60, 20);//定义一个画板
42
43 Graphics gh = Graphics.FromImage(myPalette);//在上面定义的绘图实例
44
45 矩形 rc = new 矩形(0, 0, 60, 20);//定义一个曲线
46
47 gh.FillRectangle(new SolidBrush(Color.Blue), rc);//填充几何
48 gh.DrawString(code, new Font("宋体", 16), new SolidBrush(Color.White), rc);//在矩形内画出字符串
49
50 myPalette.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);//将图片显示出来
51
52 Session["ValidateCode"] = code;//将字符串保存到Session中,以便需要时进行验证
53
54 gh.Dispose();
55 myPalette.Dispose();
56}
57
58}
59HTML文件:
一个加入HTML控件图片即可
1<%@ 页面语言="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
2
3<img src="Default2.aspx" />