问题如题所示``
MAIL:[email protected]

解决方案 »

  1.   

    这是打印 CODE39 的条码'添加 Command1 Text1  Picture1Option Explicit
    Private Sub Form_Load()
       Picture1.ScaleMode = 3
       Picture1.AutoRedraw = True
       Command1.Caption = "打 印"
    End SubPrivate Sub MakeBC()
       Dim X%, Y%, z%, pos%, Bardata$, Cur$, CurVal&, chksum&, chkchr$, BC$(43)
       BC(0) = "000110100" '0
       BC(1) = "100100001" '1
       BC(2) = "001100001" '2
       BC(3) = "101100000" '3
       BC(4) = "000110001" '4
       BC(5) = "100110000" '5
       BC(6) = "001110000" '6
       BC(7) = "000100101" '7
       BC(8) = "100100100" '8
       BC(9) = "001100100" '9
       Picture1.Cls
       If Text1.Text = "" Then Exit Sub
       pos = 20
       Bardata = UCase(Text1.Text)
       For X = 1 To Len(Bardata)
          Cur = Mid(Bardata, X, 1)
          CurVal = Val(Cur)
          chksum = chksum + CurVal
       Next
       Picture1.CurrentX = 35 + Len(Bardata) * (5 + 1 * 2)
       Picture1.CurrentY = 50
       Picture1.Print Bardata;
       chksum = chksum Mod 43
       chkchr = Mid("0123456789", chksum + 1, 1)
       Bardata = Bardata & chkchr
       Bardata = "*" & Bardata & "*"
       For X = 1 To Len(Bardata)
          Cur = Mid(Bardata, X, 1)
          CurVal = Val(Cur)
          For Y = 1 To 9
             If Y Mod 2 = 0 Then
                pos = pos + 1 + (2 * Val(Mid(BC(CurVal), Y, 1))) + 1
             Else
                For z = 1 To 1 + (2 * Val(Mid(BC(CurVal), Y, 1)))
                   Picture1.Line (pos, 1)-(pos, 58 - 1 * 8)
                   pos = pos + 1
                Next z
             End If
          Next
          pos = pos + 1 + 1
       Next
    End SubPrivate Sub Text1_Change()
       Call MakeBC
    End SubPrivate Sub Command1_Click()
       Picture1.Picture = Picture1.Image
       Printer.PaintPicture Picture1.Picture, 0, 0, Picture1.Width, Picture1.Height
       Printer.EndDoc
    End Sub
      

  2.   

    请教Sam Liu兄:
    我这儿用的是EAN8和EAN13,条码生成的算法我有,可不知道生成图形的方法,你有没有这方面的资料?
      

  3.   

    一般国际通用的皆以Code39为主,其它UPC-A UPC-E与你所说的EAN8与13太少人用了,呵呵我也没啥研究,代码已发给你了你试看EAN8与EAN13
      

  4.   


    TO: Sam Liu兄
    EAN的代码是发给我了吗?发了什么地方, 
    谢谢
      

  5.   

    Attn:vbman2003晕倒了,我以为你是楼主,发到 [email protected] 在顶楼留的Email已发到 [email protected] , 这不是用Picture1,不过改一下即可, 对它俺也不熟仅供参考.