欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【ASP.NET 2.0中文验证码的实现】,下面是详细的分享!
ASP.NET 2.0中文验证码的实现
在判断的时候只要把取得的文本框的值与“Session["valicode"] ”进行判断是否一致就行了。
//建立位图对象
Bitmap NewbitMap=new Bitmap(90, 22, PixelFormat.Format32bppArgb);
//根据上面创建的位置对象创建绘图面
Graphics g=Graphics.FromImage(NewbitMap);
//以指定的颜色填充矩形区
g.FillRectangle(new SolidBrush(Color.White), new Rectangle(0, 0, 90, 22));
//创建字体对象
Font newfont=new Font("幼圆", 14);
//创建RectangleF结构指定一个区域
RectangleF rectangle=new RectangleF(0, 0, 90, 22);
//创建随机数
Random Newrd=new Random();
string[] abcd="我,是,没,高,天,地,聊,材,盆,浊,小,涯,尖,欠,猪,左,腿,刀,吃,渴,棍,皮,影,歇,草,营,救,税,说,坏,通,病,二,世,期,春,季,弄,刑,事,警,强,窝,菜,干,什,前,都,哭,拉,面,鱼,文,鬼,或,热,狗,蛋,毛,笔,网,件,构,试,社,帮,耐,烧,粘,苹,鞋,板,裳,花,海,题,a,e,f,r,9,0,k,2,4,7,1,3,q,w,y,u,v,x,p,s,a,d,8,5,t".Split(',');
int RamStr=Newrd.Next(1,100);
int Ramstr1=Newrd.Next(1, 100);
int Ramstr2=Newrd.Next(1, 100);
int Ramstr3=Newrd.Next(1, 100);
string ValiNum=abcd[RamStr] + abcd[Ramstr1] + abcd[Ramstr2] + abcd[Ramstr3].ToString();
Session["valicode"]=ValiNum.ToString();
//使用指定的颜色填充上面RectangleF结构指定的矩形区域
g.FillRectangle(new SolidBrush(Color.BurlyWood), rectangle);
//绘制随机线条
for(int ii=0;ii<10;ii++)
{
int x1=Newrd.Next(NewbitMap.Height);
int y1=Newrd.Next(NewbitMap.Width);
int x2=Newrd.Next(NewbitMap.Height);
int y2=Newrd.Next(NewbitMap.Width);
g.DrawLine(new Pen(Color.Azure), x1, y2, y1, x1);
}
//在上面填充的矩形区域中填充上面生成的随机数
g.DrawString(ValiNum, newfont, new SolidBrush(Color.Blue), rectangle);
for (int i=0; i < 50; i++)
{
int x=Newrd.Next(NewbitMap.Width);
int y=Newrd.Next(NewbitMap.Height);
NewbitMap.SetPixel(x, y, Color.FromArgb(Newrd.Next()));
}
MemoryStream ms=new MemoryStream();
NewbitMap.Save(ms, ImageFormat.Gif);
Response.ClearContent();
Response.ContentType="image/Gif";
Response.BinaryWrite(ms.ToArray());
以上所分享的是关于ASP.NET 2.0中文验证码的实现,下面是编辑为你推荐的有价值的用户互动:
相关问题:如何实现验证码?
答:using System; using System.IO; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.Configuration; using System.Web; using System.Text; public partial class ValidateCode : System.Web.... >>详细
相关问题:如何在ASP.NET中实现验证码?
答:1.知识点介绍验证码其实是随机产生的一些数字,在System命名空间下提供的Random类可以用来产生随机性的非负数字.在ASP.NET中的System.Drawing命名空间中,提供了Bitmap,Graphics类,其中Bitmap类封装了GDI+位图,继承自Image类,用于处理由像素数据定... >>详细
相关问题:动态显示验证码怎么实现?
答:我做的是ASP.NET的你看一下,如何。生成GIF后再到前台绑定到图片或图片按钮上。就可以。步骤:1先新建一个【一般处理程序】,找一下,后缀名为 ashx (我生成的是:Handler.ashx)2.把下面源码贴上去(替换整个页面)。3 A 】 生成图片方式: b】 ... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
