无组件生成验证码-GIF格式
复制代码代码如下:
<%
OptionExplicit'显示声明
ClassCom_GifCode_Class
'''''''''''''''''''''''''''''''''''''''''''''
'Author:[email protected](QQ)
'Thanks:Laomi,Laomiao,NetRube
'2006-01-02
'''''''''''''''''''''''''''''''''''''''''''''
PublicNoisy,Count,Width,Height,Angle,Offset,Border
PrivateGraph(),Margin(3)
PrivateSubClass_Initialize()
Randomize
Noisy=16'干扰点出现的概率
Count=4'字符数量
Width=80'图片宽度
Height=20'图片高度
Angle=2'角度随机变化量
Offset=20'偏移随机变化量
Border=1'边框大小
EndSub
PublicFunctionCreate()
ConstcCharSet="123456789"
Dimi,x,y
DimvValidCode:vValidCode=""
DimvIndex
ReDimGraph(Width-1,Height-1)
Fori=0ToCount-1
vIndex=Int(Rnd*Len(cCharSet))
vValidCode=vValidCode+Mid(cCharSet,vIndex+1,1)
SetDrawvIndex,i
Next
Create=vValidCode
EndFunction
SubSetDot(pX,pY)
IfpX*(Width-pX-1)>=0AndpY*(Height-pY-1)>=0Then
Graph(pX,pY)=1
EndIf
EndSub
PublicSubSetDraw(pIndex,pNumber)
'字符数据
DimDotData(8)
DotData(0)=Array(30,15,50,1,50,100)
DotData(1)=Array(1,34,30,1,71,1,100,34,1,100,93,100,100,86)
DotData(2)=Array(1,1,100,1,42,42,100,70,50,100,1,70)
DotData(3)=Array(100,73,6,73,75,6,75,100)
DotData(4)=Array(100,1,1,1,1,50,50,35,100,55,100,80,50,100,1,95)
DotData(5)=Array(100,20,70,1,20,1,1,30,1,80,30,100,70,100,100,80,100,60,70,50,30,50,1,60)
DotData(6)=Array(6,26,6,6,100,6,53,100)
DotData(7)=Array(100,30,100,20,70,1,30,1,1,20,1,30,100,70,100,80,70,100,30,100,1,80,1,70,100,30)