The example in this article describes how asp.net simply generates verification codes. Share it with everyone for your reference, the details are as follows:
1. Create a new general processing program
namespace WebApplication1
{
/// <summary>
/// $codebehindclassname$ 的摘要說(shuō)明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Handler1 : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/gif";
//建立Bitmap對(duì)象,繪圖
Bitmap basemap = new Bitmap(100, 30);
Graphics graph = Graphics.FromImage(basemap);
graph.FillRectangle(new SolidBrush(Color.White), 0, 0, 100, 30);
Font font = new Font(FontFamily.GenericSerif, 24, FontStyle.Bold, GraphicsUnit.Pixel);
Random r = new Random();
string letters = "ABCDEFGHIJKLMNPQRSTUVWXYZ";
string letter;
StringBuilder s = new StringBuilder();
//添加隨機(jī)的五個(gè)字母
for (int x = 0; x < 5; x++)
{
letter = letters.Substring(r.Next(0, letters.Length - 1), 1);
s.Append(letter);
graph.DrawString(letter, font, new SolidBrush(Color.Black), x * 19, r.Next(0, 8));
}
//混淆背景
Pen linePen = new Pen(new SolidBrush(Color.Black), 2);
for (int x = 0; x < 6; x++)
graph.DrawLine(linePen, new Point(r.Next(0, 99), r.Next(0, 29)), new Point(r.Next(0, 99), r.Next(0, 29)));
//將圖片保存到輸出流中
basemap.Save(context.Response.OutputStream, ImageFormat.Gif);
context.Session["CheckCode"] = s.ToString(); //如果沒(méi)有實(shí)現(xiàn)IRequiresSessionState,則這里會(huì)出錯(cuò),也無(wú)法生成圖片
context.Response.End();
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
2. Front-end code
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtCode" runat="server"></asp:TextBox>
<img id="imgCode" alt="看不清?點(diǎn)擊換一張" src="Handler1.ashx" style="cursor:pointer" onclick="this.src=this.src+'?'" /><br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</div>
</form>
</body>
</html>
I hope this article will be helpful to everyone asp.net Programming helps.
For more articles on how to simply generate verification codes in asp.net, please pay attention to the PHP Chinese website!