当前位置:  编程技术>.net/c#/asp.net

asp.net创建位图生成验证图片类(验证码类)

    来源: 互联网  发布时间:2014-08-25

    本文导语:  代码: 代码如下:public void ProcessRequest(HttpContext context){context.Response.ContentType = "image/jpeg";//创建位图,并且给指定边框的宽高using (Image img=new Bitmap(80,25)){ //创建画家对象,在img对象画字符串using (Graphics g=Graphics.FromImage(img)){ //设...

代码:

代码如下:

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
//创建位图,并且给指定边框的宽高
using (Image img=new Bitmap(80,25))
{

//创建画家对象,在img对象画字符串
using (Graphics g=Graphics.FromImage(img))
{
//设置位图的背景颜色,默认是黑色
g.Clear(Color.White);
//设置验证码的宽高, img.Width-1, img.Height-1主要是背景颜色覆盖了边框线
g.DrawRectangle(Pens.Black, 0, 0, img.Width-1, img.Height-1);
//传100个噪点,传画家对象,位图对象
DrawPoint(100, g, img);
//画4个验证码的字符串
string vcode=GetCode(4);//vcode这里可以赋值给Cookie

g.DrawString(vcode,
new Font("Arial", 14, FontStyle.Strikeout | FontStyle.Strikeout), // FontStyle字体的样式,多个样式,需要|线

Brushes.Black,
new RectangleF(r.Next(20), r.Next(7), img.Width, img.Height));
img.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);//保存验证码对象,指定是Jpeg格式

}
}
}

//画噪点方法

void DrawPoint(int point,Graphics g,Image img)
{
for (int i = 0; i < point; i++)
{
int x = r.Next(img.Width);
int y = r.Next(img.Width);
g.DrawLine(Pens.Red,
new Point(x, y),
new Point(x+2, y+2));

}
}

//随机数
Random r = new Random();

//画字符创
string GetCode(int point)
{
string txtStr = "ASF2345WE5R9F3HMBCZ455K";//这里的string字符串将会转成 char数组,阿拉伯数字1和小写字母l最好别写在里面,会搞胡乱。
char[] charArr = txtStr.ToArray();
int num = 0;
string code = "";
for (int i = 0; i


    
 
 

您可能感兴趣的文章:

  • asp.net ajax时用alert弹出对话框与验证控件冲突的解决方法
  • asp.net验证邮箱格式的两种方法
  • asp.net使用ODP即oracle连接方式的的防注入登录验证程序
  • asp.net 验证码实现代码一例
  • asp email邮箱地址验证正则表达式
  • asp.net生成图片验证码的例子
  • asp.net 简单验证码的实现方法
  • ASP.NET 验证码与刷新验证码的例子
  • asp.net 验证身份证号码的代码一例
  • asp.net4中Form验证要用UseCookies
  • asp.net验证码代码(C#)
  • 如何解决 asp.net 点击验证码不刷新的问题
  • asp.net随机验证码生成示例
  • asp.net验证码图片生成示例
  • asp.net 验证码的示例代码(入门参考)
  • asp.net 常用正则表达式与验证类
  • asp.net数字、字符相混合的验证码示例
  • asp.net mvc3异常处理和身份验证
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • asp.net 生成无重复随机数的代码
  • asp.net 生成静态页时如何过滤掉viewstate
  • asp.net(c#) 使用Rex正则来生成字符串数组的代码
  • asp.net生成与解析二维码的例子
  • c#(asp.net)生成随机数(不重复)的例子
  • ASP和PHP实现生成网站快捷方式并下载到桌面的方法
  • asp.net生成二维表格的实例代码
  • Asp.net动态生成html页面的实例详解
  • asp.net(C#)生成无限级别菜单的代码
  • asp.net 简单生成缩略图的代码详解
  • asp.net生成缩略图示例方法分享
  • c#(asp.net)图片上传且生成高清缩略图的代码
  • 使用ASP.NET模板生成HTML静态页的方法
  • asp.net生成静态页面并分页的实现方法
  • asp.net(C#)生成Code39条形码实例 条码枪可以扫描出
  • ASP.NET之 Ajax相关知识介绍及组件图
  • 我想了解一些关于Java怎样与Asp或Asp.net结合方面在未来发展方向的问题?
  • c#/ASP.NET操作cookie(读写)代码示例
  • asp.net UrlEncode对应asp urlencode的处理方法
  • asp.net实例 定义和使用asp:AccessDataSource
  • win2008 r2 服务器环境配置(FTP/ASP/ASP.Net/PHP)
  • asp与asp.net的session共享
  • 如何在unix下发布asp?
  • 怎么让Apache支持Asp?
  • ??谁能把ASP代码改为JSP的
  • Linux平台下哪种方法实现ASP好?
  • ASP和ASP.Net共享Session解决办法
  • 通过socket和asp打交道
  • 犹豫中……,到底是选择ASP,还是JSP?
  • asp 是否 可用applet标签?帮忙!!
  • asp.net判断数据库表是否存在 asp.net修改表名的方法




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3