您所在的位置:小祥子 » 编程 » ASP » 正文

ASP中文验证码函数

时间:2015-01-30 编辑:佚名 来源:互联网

首先服务器需要安装ASPpainter组件,以下是从动网源码里扒来的。

<%
dim hanzi,cd,upperbound,lowerbound,yzcode,i,codesize,isborder,SetFontStrikeout,SetFontBold,psn
hanzi="和任取据处队南给色人这中大为上个国我以要他时来用们生到作地于对成会可主发年动下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然组见计别她手角期根论运农指几九区强放决西被干做必战先回则光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转记且究观越织装影算音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率需段研界拉林律叫"
'这里是验证码要显示的中文内容,你可以自由添加或删除,也可添加为字符
cd=len(hanzi) '计算长度
'=============================================
psn="GetCode" '设置session名,不要改,这是动网设置的名字
codesize=4 '设置验证码汉字的数量,4个比较合适,多了麻烦
isborder=true '是否有边匡 
upperbound=10 '这是汉字右旋转的最大角度
lowerbound=-10 '这是汉字左旋转的最大角度
SetFontBold=1 '是否粗体 1or 0
SetFontStrikeout= 1 '是否加删除线 1or 0
'=============================================
yzcode="" '初始化验证码
dim SetFormat 
SetFormat=4 '设置图象格式type 1- Jpeg, type 3 - GIF, type 4 -TIFF, type 5 - BMP. 
'如果增加识别程序的难度,可以随即选择。不过对付群发,也够用了
Dim pic 
Set pic = CreateObject("ASPPainter.Pictures.1") '建立图象对象
pic.SetFormat SetFormat '设置格式
pic.SetBKColor 255,255,255,255 '设置背景red, green, blue, alpha 0为透明
pic.Create codesize*30 ,30 '摄制宽和高(width, height)
pic.SetColor 0,0,255,255 '设置文字前景色 Set foreground color
if isborder then pic.DrawRectangle 0,0,codesize*30-1,29
pic.SetFontName "宋体" '设置字体 你服务器上应该安装
pic.SetFontSize 18 '设置文字大小
pic.setTextAlign 0 '是否斜体
pic.SetFontStrikeout SetFontStrikeout 
pic.SetFontBold SetFontBold
for i=0 to codesize-1
drawrdmhz(i) 
next
pic.ClearFontRectangle
response.binarywrite pic.SaveToStream '输出图象
pic.DestroyALL 
Set pic = Nothing
Session(pSN) = yzcode '记录入Session
sub drawrdmhz(hzpos) '随机输出一个汉字
dim tmphz
Randomize
tmphz=mid(hanzi,Int(cd* Rnd + 1),1)
'设置随即角度 -10 ---10度为好
pic.SetFontOrientation Int((upperbound - lowerbound + 1) * Rnd + lowerbound) '旋转角度
pic.TextOut hzpos*30,2,tmphz
yzcode=yzcode&tmphz
end sub
%>
关键词:中文 验证码 函数