当前位置: 首页 > 图文教程 > 网络编程 > ASP > 生成EAN13标准的条形码的ASP代码实例

ASP
提高SQL的执行效率的ASP的五种做法
asp的offset的一个go to page
asp中command的在单条记录时,有些字段显示为空的问题
asp,php一句话木马整理方便查找木马
asp 合并记录集并删除的sql语句
asp下循环一行多少个
asp循环行数输出函数
asp access重新开始编号
ASP生成数字相加求和的BMP图片验证码
静态页面利用JS读取cookies记住用户信息
比较详细的Asp伪静态化方法及Asp静态化探讨
asp Response.flush 实时显示进度
Asp高级故障解决以及相关代码
asp智能脏话过滤系统v1.0
ASP文件中的安全问题
Access数据库中“所有记录中均未找到搜索关键字”的解决方法
asp两组字符串数据比较合并相同数据
asp MYSQL出现问号乱码的解决方法
asp文章中随机插入网站版权文字的实现代码
ASP利用XMLHTTP实现表单提交以及cookies的发送的代码

生成EAN13标准的条形码的ASP代码实例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 60 ::
收藏到网摘: n/a

复制代码 代码如下:

<title>条形码生成</title>
<%
Rem =================================================================
Rem = 函数:ean13
Rem = 说明:生成EAN13标准的条形码,有实例(ASP代码)
Rem = 版本:1.0.0
Rem = 作者:第七种直角(7th/semico)
Rem = Date:2005-08-08 11:57:06
Rem = QQ:11110785
Rem = QQ群:3773360
Rem = 适用:按照需要生成EAN13标准的条形码
Rem =================================================================
Function ean13(code,w,h)
Dim Guide,Dict,Lencode,Rencode,cStart,cMid,cEnd,Barcode,Lmethod
Guide = array("AAAAAA","AABABB","AABBAB","ABAABB","ABBAAB","ABBBAA","ABABAB","ABABBA","ABBABA")

Set Dict = CreateObject("Scripting.Dictionary")
Dict.Add "A", "0001101001100100100110111101010001101100010101111011101101101110001011"
Dict.Add "B", "0100111011001100110110100001001110101110010000101001000100010010010111"

Rencode = array("1110010","1100110","1101100","1000010","1011100","1001110","1010000","1000100","1001000","1110100")

cStart="101"
cMid="01010"
cEnd="101"

if w<2 then w=2
if h<20 then h=20
cWidth=w '条码单元宽度
cHeight=h '条码高度

'检验条码是否符合标准
if len(code)<>13 then response.write "必须为13位!":response.end

for i=1 to 12
if IsNumeric(mid(code,i,1)) then
if i mod 2 then
rsum=rsum+int(mid(code,i,1))
else
lsum=lsum+int(mid(code,i,1))
end if
else
response.write "必须为数字码!":response.end
end if
next
if 10-((lsum*3+rsum) mod 10) <> int(right(code,1)) then response.write "此条码错误!":response.end

'转换条码
Barcode=cStart
Lmethod=left(code,1)
'if Lmethod=0 then Lmethod=1
for i=2 to 7
barcode = barcode & mid(Dict(Mid(Guide(Lmethod-1),i-1,1)),(7*mid(code,i,1)+1),7)
next
barcode=barcode & cMid
for i=8 to 13
barcode = barcode & Rencode(mid(code,i,1))
next
barcode=barcode & cEnd


fg="#000000" '条码前景色
bg="#ffffff" '条码背景色
response.write "<div style='position:absolute;width:"&cWidth*95+60&"px; height:"&cHeight+30&"px; background:"&bg&";'>"
'绘制条码
for x=1 to len(barcode)
if x<5 or x>92 or (x>46 and x<51)then
sh=10
else
sh=0
end if

if mid(barcode,x,1)="1" then
bColor=fg
else
bColor=bg
end if

response.write "<div style='position:absolute;left:"&(x-1)*cWidth+30&"px;top:5px;width:"&cWidth&"px;height:"&cHeight+5+sh&"px;background:"&bColor&";'></div>"
next
'加入可读数字标签
response.write "<div style='position:absolute;left:16px;top:"&cHeight+10&"px;background:"&bg&";color:"&fg&";font:12px Verdana;'>"&left(code,1)&"</div>"
for x=1 to 6
response.write "<div style='position:absolute;left:"&(x*7+2)*cWidth+22&"px;top:"&cHeight+10&"px;background:"&bg&";color:"&fg&";font:12px Verdana;'>"&mid(code,x+1,1)&"</div>"
response.write "<div style='position:absolute;left:"&(x*7+47)*cWidth+24&"px;top:"&cHeight+10&"px;background:"&bg&";color:"&fg&";font:12px Verdana;'>"&mid(code,x+7,1)&"</div>"
next
response.write "<div style='position:absolute; left:30px;top:"&cHeight+25&"px;width:"&cWidth*95&"px;height:10px;text-align:center;background:#ffffff;border:solid 1px #e5e5e5;font:9px verdana;'>© 2007 by elbo </div>"
response.write "</div>"
End Function

%>
<p style="font:12px Verdana">
<span style="text-decoration: none">
<font color="#000000">适用:按照需要生成EAN13标准的条形码</font></span><br />
可以试验以下条码:<br />
9787900420206<br />
9787894954947
</p>
<br />
<form method="post" action="ttt.asp">
<label>
<input type="" name="bcode" />
</label>
<input type="submit" value="生成条码"/>
</form>
<p align="center"></p>

<p align="center">

<%
if request("bcode")<>"" then
call ean13(request("bcode"),2,100)
else
call ean13("1234567890128",2,100)
end if

%>
</br></a>版权所有 </p>