|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
首先,我们先介绍一下设计思路,数字和字母的随机组合生成验证码,然后将验证码生成图片,这里“数字和字母的组合”应该是随机取出来的;假如是专门的数字验证码,我们可以这样实现: ycodenum=4 \\\'验证码的位数,或者说成个数 for i=1 to ycodenum Randomize \\\'初始化随机数发生器 ycode=ycode&Int((9*Rnd)) \\\'rnd是随机数,从0到1之间的任意实数,这里获得0到9之间的整数 next response.write ycode \\\'就可以输出数字验证码(4位) 然而,我们要让数字和字母同样随机生成,这里我们可以用到数组来实现这种效果,如下: ychar="0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z" \\\'将数字和大写字母组成一个字符串 yc=split(char,",") \\\'将字符串生成数组 ycodenum=4 for i=1 to ycodenum Randomize ycode=ycode&yc(Int((35*Rnd))) \\\'数组一般从0开始读取,所以这里为35*Rnd next response.write ycode 现在看看输出结果是不是数字和字母随机组合的呢? 下面看看怎样生成图片,这个也许有些朋友知道:asp不能生成图片,必须使用asp组件。不错,我们这里使用的是ASP图象组件shotgraph。有一点大家注重,服务器不是自己的不能用哦,因为你装不了这组件。 组件的下载地址:http://www.knowsky.com/download/ShotGraph.rar,至于怎么注册,这里就不多说了,网上有很多资料 我们看看生成图片的代码: ychar="0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z" \\\'将数字和大写字母组成一个字符串 yc=split(char,",") \\\'将字符串生成数组 ycodenum=4 for i=1 to ycodenum Randomize ycode=ycode&yc(Int((35*Rnd))) \\\'数组一般从0开始读取,所以这里为35*Rnd next Response.Clear Response.ContentType="image/gif" set obj=Server.CreateObject("shotgraph.image") x=55 \\\'图片的宽 y=26 \\\'图片的高 obj.CreateImage x,y,8 \\\'8是图片的颜色8位 obj.SetColor 0,55,126,222 obj.SetColor 1,255,255,255 obj.CreatePen "PS_SOLID",1,0 obj.SetBgColor 0 obj.Rectangle 0,0,x-1,y-1 obj.SetBkMode "TRANSPARENT" obj.CreateFont "Arial",136,18,1,False,False,False,False obj.SetTextColor 1 obj.TextOut 5,4,ycode&" " img=obj.GifImage(-1,1,"") Response.BinaryWrite (img) 返回类别: 教程 上一教程: 一个ASP版的图片浏览器 下一教程: ASP系列讲座(九)设置对象作用域 您可以阅读与"数字和字母组合并生成图片的验证码祥解"相关的教程: · 用CANVAS做的ASP无组件生成图片验证码 · 随机产生N位由数字和字母组成的密码 · 随机数字直接生成图片的ASP代码 · ASP 生成 XBM 图可用作验证码 · ASP生成XBM图可用作验证码 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |