条码打印一 - Zebra斑马打印机三种打印方式的利弊
主要有以下三种方法
1、利用ZPLII指令集编写带有位置信息,字体大小,打印内容等信息的指令,利用TCP/IP或者串口传输到打印机打印。
2、利用Graphic类在自己程序中绘制出自己想要的打印效果图,然后用指令集中的DG指令将打印效果图整张通过TCP/IP或者串口传输到打印机打印。
3、利用NiceLabel、BarTender、CodeSoft等第三方打印编辑软件,利用可视化界面(托拉拽)编辑好要打印的效果,然后调用打印机驱动进行打印。
方法一:利用ZPLII指令集编写带有位置信息,字体大小,打印内容等信息的指令,利用TCP/IP或者串口传输到打印机打印
介绍:
Zebra打印机有自己的编程语言,也就是ZPLII,与其他编程语言一样,他有固定的格式,只需要按照指令集里面规定的参数填写方式进行填写,然后发送该条指令内容到打印机上,打印机就能执行相对应的操作,最基本的就是打印内容,还包括控制打印机的开关,打印机的打印速度、深度等各种打印机的设置。功能很全,权限很足。
优点:
1、如果是打印效果很简单,比如就是打几个数字,英文字母,或者生产日期的那种,这种方式是最合适的,基本上只要花个几分钟就可以做好。
2、打印可以集成到别的软件中,标签上如果有变量的话比较方便,需要打印时只需要和打印机建立通讯,发送指定的指令即可实现打印。
3、有自带的中文字体E:HANS.TTF;
缺点:
1、在调试页面效果的时候也很不方便,虽然有可视化设计软件界面,设计的和打印出来的还是有差异,每次修改打印效果都需要手动修改参数,然后发给打印机打出来才能看到打印效果,不是很直观。
2、虽然有自带的可视化的设计操作界面,用户可以自己排版,添加其他模块等。程序一旦定了,打印效果需要二次修改的话很麻烦。
方法二:利用Graphic类在自己程序中绘制出自己想要的打印效果图,然后用指令集中的DG指令将打印效果图整张通过TCP/IP或者串口传输到打印机打印
介绍:
由于方法一在打印中文以及字体选择上很不方便,就有了方法二,也就是利用自己擅长的编程语言通过Graphic类绘制出自己想要的效果图,然后再把整张图片传给打印机进行打印。之前博客有介绍如何使用操作:Zebra打印机通过图片传输打印。
优点:
1、打印字体不受限制,只要你电脑里有的就都能打印,中文什么的都不在话下。
2、打印效果的调试比较方便,修改参数后你只要将图片在程序中进行显示就可以看得到效果,而不需要一定要打出来才能确认打印效果。
3、和方法一一样,可以集成到别的软件当中,可以和其他软件协同工作。
缺点:
1、由于采用的是图片传输给打印机打印,并非矢量图,如果字体较小,清晰度不够,那么打印出来的效果就很差,字很模糊。图片传过去的大小一定要控制好,不然会造成溢出标签或者没填充蛮标签等问题。
2、打印的效果图只能编程人员根据客户需求设计,一点点画出来,没有类似画图工具一样的可视化操作界面不能客户自己修改,做一套打印效果模板成本太高。
3、采用方法二必须会编程的是程序员,否则无法生成效果图片。
方法三:利用NiceLabel、BarTender、CodeSoft等第三方打印编辑软件,利用可视化界面(托拉拽)编辑好要打印的效果,然后调用打印机驱动进行打印。
介绍:
方法一二在更换打印效果模板时都需要程序员代码重新用敲出一个打印模板,工作量巨大,并且调试麻烦。方法三就解决了这个问题,他有像画图工具一样的可视化操作界面,用户可以自己做打印模板,并且可以通过托拉拽的方式进行打印效果的调整,也可以做到和数据库对接,做到每张标签打印出来的内容都不同。而且还可以导入pdf文件,各种矢量图等等。
优点:
1、可视化界面,调试方便。
2、用户可以自己新建模板,做模板,操作非常简单。也可以和数据库建立连接,标签内容可以设置变量。
3、软件可以导入PDF、矢量图等各种文件,大小调整方便,打印出来的效果也很清晰。
缺点:
1、由于调用的是驱动打印,不能像方法一二集成到别的软件中,如果要和其他系统协同工作,就比较麻烦,比如网页需要通过ActiveX和相应的第三方打印编辑软件的插件,才能完成打印。
2、不能让其他软件控制该何时打印,只能在这个第三方软件里面进行控制。