日期:2008-08-17  浏览次数:20489 次

现在越来越多的网站喜欢搞个验证码出来,而且各个语言基本上都能做到,今天我来一个C#写的!

using System;
using System.Collections;
using System.ComponentModel;


using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HTMLControls;
using System.Drawing.Imaging;
using System.Drawing.Drawing2D;

//建立位图对象

public void randomNumber()

{
   Bitmap newBitmap = new Bitmap(36,16,PixelFormat.Format32bppArgb);
   //根据上面创建的位图对象创建绘图面
   Graphics g = Graphics.FromImage(newBitmap);
   //以指定的颜色填充矩形区
   g.FillRectangle(new SolidBrush(Color.White), new Rectangle(0,0,36,16));
   //创建字体对象
   Font textFont = new Font("Times New Roman",10);
   //创建RectangleF结构指定一个区域
   RectangleF rectangle = new RectangleF(0,0,36,16);
   //创建随机数对象
   Random rd = new Random();
   //取得随机数
   int valationNo = 1000 + rd.Next(8999);
   //使用指定的颜色填充上面RectangleF结构指定的矩形区域
   g.FillRectangle(new SolidBrush(Color.BurlyWood), rectangle);
   //在上面填充的矩形区域中填充上面生成的随机数
   g.DrawString(valationNo.ToString(), textFont, new SolidBrush(Color.Blue), rectangle);
   //把创建的位图保存到指定的路径
   newBitmap.Save(Server.MapPath("img")+"\\Img.gif", ImageFormat.Gif);

}

生成以后在前台页面里引入这个图片的地址就可以了!