调用SMT.ZEBRA.dll斑马打印机库文件,打印条形码。

调用SMT.ZEBRA.dll斑马打印机库文件,打印条形码。

效果图:

调用SMT.ZEBRA.dll斑马打印机库文件,打印条形码。_第1张图片
准备:1. 斑马打印机 型号GT820。
2. 斑马打印机驱动。
3. 库文件SMT.ZEBRA.dll 和 SMT.ZEBRA.dll的依赖库文件Fnthex32.dll。
见下方链接。

步骤:1。调试打印机,安装支持打印机的ZPL驱动(因为所打印标签的模板使用ZPL指令编写的,所以必须选择ZPL)。
打印机属性->测试页,打印成功说明调试成功。
2。注册 SMT.ZEBRA.dll 文件, cmd 右键->管理员权限运行-> regram 路径/SMT.ZEBRA.dll 。
Fnthex32.dll库文件貌似不用注册,详见demo中readme.txt。
3。给予DLL文件运行权限。右键DLL文件->属性->安全->编辑->添加->everyone->确定->完全控制->确定。
4。项目引用 SMT.ZEBRA.dll ,Fnthex32.dll库文件也不用引用。
5。 上代码:

Imports System.Drawing.Printing.PrinterSettings
Imports System.Drawing.Printing
Imports System.Text.RegularExpressions

Public Class TestZebraPrinterForm

    Private Sub TestZebraPrinterForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim stringCollection As PrinterSettings.StringCollection = PrinterSettings.InstalledPrinters   '’得到已安装的打印机名字。
        Dim strPrinterName As String = String.Empty
        Dim regex As Regex = New Regex("^.*ZPL.*$")  '’new 一个正则表达式模板 ,^.*ZPL.*$ 代表包含ZPL的任意字符串。
        Dim itemValue As String = ""
        For Each strName As String In stringCollection
            strPrinterName = strName.ToString()
            Printer_ComboBox.Items.Add(strPrinterName)  '’添加到组合框。
            If regex.IsMatch(strPrinterName) Then '’判断是否满足模板。
                itemValue = strPrinterName
            End If
        Next
        Printer_ComboBox.SelectedText = itemValue

    End Sub

    Private Sub print_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles print_Button.Click
        ''实例化一个打印类
        Dim zebraPrinter As Smt.Zebra.ZebraPrinter = New Smt.Zebra.ZebraPrinter()


        For i = 0 To 2

            Dim str1 As String = "名称1:" + "内容"
            Dim str2 As String = "名称2:" + "内容"
            Dim str3 As String = "名称3:" + "内容"
            Dim str4 As String = "名称4:" + "内容"
            Dim str5 As String = "名称5:" + "内容"
            Dim str6 As String = "名称6:" + "内容"

            ''定义一个标签值
            Dim barcode As String = "A" + "00000000" + i.ToString

            ''按照格式,格式化成新的字符串
            '’str1 = String.Concat(" ", "^", " ", "~", str1)   ''双排条形码
            Dim Str As String = String.Concat(str1, "^", str2, "^", str3, "^", str4, "^", str5, "^", str6, "~", barcode)      '单排条形码
            ''barcodeConfig.TXT:模板配置文件 或barcodeConfig.PRN  //一定要大写
            ''Printer_ComboBox.Text:打印机名称
            Dim Path As String = "barcodeConfig.TXT"
            zebraPrinter.PrintLabEx(Path, Str, Printer_ComboBox.Text)
        Next
    End Sub
End Class

下面是打印模板文件barcodeConfig.TXT。

 ^XA //开始

^PW1000    //条码最大宽

^MD30        //颜色深度

^LH0,0


#CN_DATA1#;|宋体|20|18|^FO100,60         //占位符    //FO横纵坐标
#CN_DATA2#;|宋体|20|18|^FO520,60          //占位符
#CN_DATA3#;|宋体|20|18|^FO100,130         //占位符
#CN_DATA4#;|宋体|20|18|^FO520,130         //占位符
#CN_DATA5#;|宋体|20|18|^FO100,200      //占位符
#CN_DATA6#;|宋体|20|18|^FO520,200       //占位符

//打印条码   //BY缩放大小,条码高度  //(^BCN,120,Y,N,N)打印不旋转的高度为100点的Code128条码。
^FO280,320^BY4.0,3.0^BCN,120,Y,N,N,A^FD#ID1#^FS     

^PQ1,0,1,Y

^XZ   //结束

十分感谢,参考链接 https://blog.csdn.net/u010028869/article/details/39809379

另一种方法:https://www.cnblogs.com/zh7791/p/6905130.html

下面是demo链接(包含两个库文件,驱动),给需要的朋友们。
https://download.csdn.net/download/weixin_43553234/10849813

你可能感兴趣的:(库文件)