网络编程
位置:首页>> 网络编程>> Asp编程>> 给验证码增加干扰的杂点

给验证码增加干扰的杂点

作者:亮亮 来源:亮亮的博客 发布时间:2008-05-16 11:34:00 

标签:验证码,干扰,adobe.stream

  在以前的日志中讲了怎么制作验证码,这篇就讲讲怎么给验证码加上起干扰效果的杂点。
   其实很简单,首先做一个图片,这个图片的作用就是用来生成杂点的,每次都是从这个图片读取一定的字节,再把这些字节写入到验证码中生成杂点。下面是我制作的一个图片,当然你可以根据自己需要自己画。

剩下的就是代码了,就是在输出验证码之前即在如下的代码前加代码

Ados.Position=0
'直接向客户端发送图像数据
Response.ContentType = "image/BMP"
Response.BinaryWrite Ados.read()
Ados.Close:set Ados=nothing
Ados1.Close:set Ados1=nothing

增加的代码如下:

set adoZd=server.CreateObject("adodb.stream")
adoZd.Mode=3
adoZd.Type=1
adoZd.Open
adoZd.LoadFromFile(Server.mappath("zd.bmp"))
for i=0 to 50     '50为生成的杂点的数量,你可以自己看着办
Randomize timer
'生成的随机数我是根据图像的大小定的,你可以根据你的图像大小定
rndI=Int(rnd*20)   '图形的高度为20
rndI2=Int(rnd*4)   '验证码是4位
rndI3=Int(rnd*60) '每个像素3字节,20就是60字节
adoZd.position=54+240*rndI+rndI2*60+rndI3
Ados.position=54+240*rndI+rndI2*60+rndI3
Ados.write adoZd.read(9)      '从zd.bmp读取9个字节
next

带杂点的验证码演示

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com