您现在的位置:网侠>技术开发>.NET使用>正文
正文

.NET下生产图片验证码

文章来源: 文章作者: 发布时间:2006-08-18 【字体:
收藏本文】 【推荐好友】 【进入博客】 【进入论坛

  字串4

后台文件: 字串8


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));
字串6


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"};
字串4


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 字串2

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" %>

字串8



2

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



上一篇:google pagerank checksum算法(1)  下一篇:Net分页控件发布
推荐新闻
     
 
邮箱:ewind@qq.com
建议您使用:1024*768以上分辩率浏览本站 如果你喜欢本站 请收藏本站 并推荐给你的朋友一起分享
免责声明:本站部分内容收集于网络,版权归原作者及出版社所有!如果您觉得侵犯了您的版权请来信告诉我们,我们会尽快删除其内容!