我爱Aspx >> Asp.Net >> 开发基于ASP.NET WebService的图片验证码服务bmp.Dispose();
graph.Dispose();
strKey = strResult;
byte[] byteReturn = bstream.ToArray();
bstream.Close();
return byteReturn;
}
2. 测试WebMethod,添加一个WebForm,引用上述WebService,引用名为imagesvr。在Page_Load中添加代码:
...
imagesvr.MyService imgsvr = new imagesvr.MyService();
string strKey = "";
byte[] data = imgsvr.GenerateVerifyImage(5,ref strKey);
Response.OutputStream.Write(data,0,data.Length);
...
3. 运行。每次refresh这个WebForm时,就会显示一个新生成的图片验证码,而函数的输出参数strKey保存的就是这个验证码的实际内容,可以保存在Session中,作为验证使用。
上次开发出图片验证码之后,根据一些朋友的建议,本着验证码易识别(针对人),不易破解,美观的原则,改进了验证码生成的算法,采用图像滤镜的方法,对图片验证码进行反破解干扰,结果图片示例如下:

滤镜效果主要采用波形(wave)算法,通过对X轴Y轴的正弦波形处理,产生叠加效果。算法主要描述如下:
private const double PI = 3.1415926535897932384626433832795;
Ҷƪл˵?
开发ASP.NET Atlas服务器端Exten..[08-01]
在ASP.net中保存/取出图片入/从S..[08-01]
.net下访问Access数据库需要注意..[08-01]
IIS同一站点下aps.net 1.1与2.0 ..[08-01]
创建ASP.NET程序时候发生错误&qu..[08-01]
ASP.Net防止刷新自动触发事件的解..[08-01]
ASP.net:Literal控件用法[08-01]
ASP.NET 2.0的视图状态持久性机制[08-01]
开发ASP.NET Atlas服务器端Exten..[08-01]
asp.net中XML文件作为中间件进行..[08-01]
六步使用ICallbackEventHandler实..[08-01]
开发ASP.NET Atlas服务器端Exten..[08-01]
在ASP.net中保存/取出图片入/从S..[08-01]
调试javascript的好方法[08-01]
Windows版本Discuz!—EasyDiscuz..[08-01]
Photoshop修图技巧:巧为扫描图像..[08-01]
Photoshop显身手 灌篮高手人人当[08-01]
用Photoshop给照片制作艺术边缘[08-01]
在word中实现表格的行列转置[08-01]
多媒体视频文件修复完全攻略[08-01]