给验证码增加干扰的杂点

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

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

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

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

带杂点的验证码演示

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

猜你喜欢

  • Django实现简单登录的示例代码

    2022-03-26 04:10:18
  • python 实现图片特效处理

    2021-04-20 05:34:22
  • 在ASP.NET 2.0中操作数据之三十六:在DataList里编辑和删除数据概述

    2024-05-09 09:03:43
  • Go简单实现协程方法

    2024-02-06 05:00:12
  • 简述Python中的面向对象编程的概念

    2021-11-08 07:53:11
  • Jupyter Notebook内使用argparse报错的解决方案

    2023-05-08 21:43:52
  • php 模拟get_headers函数的代码示例

    2023-09-09 06:16:36
  • SQL查询效率注意事项小结

    2012-01-05 19:31:25
  • vue 使用饿了么UI仿写teambition的筛选功能

    2024-04-27 16:05:09
  • Golang中基于HTTP协议的网络服务

    2024-05-21 10:23:55
  • python复制文件代码实现

    2022-08-29 09:28:11
  • Django中使用MySQL5.5的教程

    2024-01-22 09:53:35
  • Python 取numpy数组的某几行某几列方法

    2023-11-24 05:46:47
  • numpy:np.newaxis 实现将行向量转换成列向量

    2023-07-13 03:14:39
  • Golang远程调用框架RPC的具体使用

    2024-02-16 01:50:02
  • Python+Opencv实战之人脸追踪详解

    2022-09-22 16:03:38
  • 使用python连接mysql数据库之pymysql模块的使用

    2024-01-16 13:12:11
  • mysql主从服务器同步心得体会第1/2页

    2024-01-18 13:34:20
  • Python 数据结构之旋转链表

    2021-05-04 15:39:28
  • CSS中expression的用法

    2008-09-11 14:18:00
  • asp之家 网络编程 m.aspxhome.com