.NET下生产图片验证码

发表于:2007-06-11来源:作者:点击数: 标签:
后台文件: 1using System; 2using System.Data; 3using System.Configuration; 4using System.Collections; 5using System.Drawing; 6using System.Web; 7using System.Web.Security; 8using System.Web.UI; 9using System.Web.UI.WebControls; 10using Syst

后台文件:

1using System;

2using System.Data;

3using System.Configuration;

4using System.Collections;

5using System.Drawing;

6using System.Web;

7using System.Web.Security;

8using System.Web.UI;

9using System.Web.UI.WebControls;

10using System.Web.UI.WebControls.WebParts;

11using System.Web.UI.HtmlControls;

12

13public partial class Default2 : System.Web.UI.Page

14{

15    protected void Page_Load(object sender, EventArgs e)

16    {

17        if(!this.IsPostBack)

18        {

19            this.GenImg(this.GenCode(4));

20        }

21

22    }

23    //产生随机字符串

24    private string 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","M","N",

28                            "O","P","Q","R","S","T","U","V","W","X","Y","Z"};

29        string code="";

30        Random rd=new Random();

31        for(int i=0;i < num;i++)

32        {

33            code += source[rd.Next(0,source.Length)];

34        }

35        return code;

36    }

37

38        //生成图片

39    private void GenImg(string code)

40    {

41        Bitmap myPalette = new Bitmap(60, 20);//定义一个画板

42

43        Graphics gh = Graphics.FromImage(myPalette);//在画板上定义绘图的实例

44

45        Rectangle rc = new Rectangle(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控件Image即可

1<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

2

3<img src="Default2.aspx" />

(责任编辑:海纳百川  qlmzl11268@hotmail.com    TEL:(010)68476606-8007)



原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
...