zoukankan      html  css  js  c++  java
  • 条形码:Code93

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     
    <head>
    <meta content="text/html; charset=gb2312" http-equiv="Content-Type" />
    <title>Code93条形码生成</title>
    <style type="text/css">
    *{
            font-family:'menu'
    }
    .bar_b{
            display:block;
            float:left;
            height:50px;
            2px;
            background:#000;
    }
    .bar_w{
            display:block;
            float:left;
            height:50px;
            2px;
            background:#fff;
    }
    .box{
            display:block;
            clear:both;
            margin:10px;
    }
    p{
            clear:both;
    }
    </style>
    </head>
     
    <body>
    <div class="box">
    <%
    Call Code93("nimei056759846")
    %>
    </div>
    <div class="box">
    <%
    Call Code93("Extaspnet")
    %>
    </div>
    <%
    '打印条形码
    Sub Code93(s)
            Dim strResult,strC,strK,intC,intK
            Dim strStart,strEnd,i,k
            '头尾
            strStart = "101011110"
            strEnd =   "1010111101"
            '体
            strResult = ""
            '全部初始化为大写
            s = UCase(s)
            '初始化变量
            strC = ""
            strK = ""
            intC = 0
            intK = 0
            k = 1
            '循环组合体,并计算CK值
            For i = Len(s) To 1 Step -1
                    sT = Mid(s,i,1)
                    iT = S_To_D(sT)
                    intC = intC + k * iT
                    intK = intK + ((k+1) * iT)
                    strResult = S_To_B(sT) & strResult
                    k = k + 1
            Next
     
            '计算出C值
            intC = intC Mod 47
            strC = D_To_S(intC)
            '计算出K值
            intK = intK + intC
            intK = intK Mod 47
            strK = D_To_S(intK)
            strResult = strStart & strResult
            strResult = strResult & S_To_B(strC) & S_To_B(strK) & strEnd
     
            '打印
            For i = 1 To Len(strResult)
                    iT = Mid(strResult,i,1)
                    if CLng(iT) = 1 Then
                            Response.Write "<div class=""bar_b""></div>"
                    Else
                            Response.Write "<div class=""bar_w""></div>"
                    End if
            Next
            Response.Write "<p>"& s &"</p>"
    End Sub
    '根据值取字符
    Function D_To_S(str)
            Dim strTemp
            if CLng(str) >=0 and CLng(str)<=9 Then
                    strTemp = Chr(CLng(str) + 48)
            Elseif CLng(str) >=10 and CLng(str)<=35 Then
                    strTemp = Chr(CLng(str) + 55)
            Else
                    Select Case str
                            Case "36":strTemp = "-"
                            Case "37":strTemp = "."
                            Case "38":strTemp = " "
                            Case Else
                                    strTemp = "0"
                    End Select
            End if
            D_To_S = strTemp
    End Function
     
    '取得计算值
    Function S_To_D(str)
            Dim strTemp,iStr
            iStr = Asc(str)
            if iStr>=48 and iStr=<57 Then
                    strTemp = iStr - 48
            Elseif iStr>=65 and iStr=<90 Then
                    strTemp = iStr - 55
            Else
                    Select Case str
                            Case "-":strTemp = 36
                            Case ".":strTemp = 37
                            Case " ":strTemp = 38
                            Case Else
                                    strTemp = 0
                    End Select
            End if
            S_To_D = strTemp
    End Function
    '将字符转为二进制码
    Function S_To_B(str)
            Dim strTemp
            Select Case str
                    case "0":strTemp = "100010100"
                    case "1":strTemp = "101001000"
                    case "2":strTemp = "101000100"
                    case "3":strTemp = "101000010"
                    case "4":strTemp = "100101000"
                    case "5":strTemp = "100100100"
                    case "6":strTemp = "100100010"
                    case "7":strTemp = "101010000"
                    case "8":strTemp = "100010010"
                    case "9":strTemp = "100001010"
                    case "A":strTemp = "110101000"
                    case "B":strTemp = "110100100"
                    case "C":strTemp = "110100010"
                    case "D":strTemp = "110010100"
                    case "E":strTemp = "110010010"
                    case "F":strTemp = "110001010"
                    case "G":strTemp = "101101000"
                    case "H":strTemp = "101100100"
                    case "I":strTemp = "101100010"
                    case "J":strTemp = "100110100"
                    case "K":strTemp = "100011010"
                    case "L":strTemp = "101011000"
                    case "M":strTemp = "101001100"
                    case "N":strTemp = "101000110"
                    case "O":strTemp = "100101100"
                    case "P":strTemp = "100010110"
                    case "Q":strTemp = "110110100"
                    case "R":strTemp = "110110010"
                    case "S":strTemp = "110101100"
                    case "T":strTemp = "110100110"
                    case "U":strTemp = "110010110"
                    case "V":strTemp = "110011010"
                    case "W":strTemp = "101101100"
                    case "X":strTemp = "101100110"
                    case "Y":strTemp = "100110110"
                    case "Z":strTemp = "100111010"
                    case "-":strTemp = "100101110"
                    case ".":strTemp = "111010100"
                    case " ":strTemp = "111010010"
                    Case Else
                            strTemp = "100010100"
            End Select
            S_To_B = strTemp
    End Function
    %>
     
    </body>
     
    </html>
    

      

  • 相关阅读:
    JVM常用参数整理
    mac系统使用Chrome浏览器https不自动保存密码
    JVM和JMM内存模型
    Chrome提示是否保存密码点击了否,导致没有自动保存密码
    解决Mac系统IDEA debug卡顿问题
    DBeaver的时区问题
    IDEA导航光标回退和前进快捷键失效
    Dubbo 2.6.0升级到2.7.3
    chrome浏览器备忘
    电脑导入mobi书籍文件到IPAD的方法
  • 原文地址:https://www.cnblogs.com/blackice/p/2882532.html
Copyright © 2011-2022 走看看