上一篇说到条码的打印,主要是通过读取模板定义文件(XML文件),然后结合从数据库中读取的动态数据结合而产生条码。下面主要说一下如何设计这个条码模板。设计过程也很简单,只需要简单的拖拉即可。然后点击小箭头或右下角的命令,选择SaveToXmlFile,然后选择路径保存。
上面设计图产生的XML将会是以下的内容。
打印出来的效果如下图
大家可以看一下,后续如果此标签需要,可以只修改这个XML的内容便可,下面讲一下这个控件的使用方法。
首先注册printbarcdoe.dll,然后在工程中引入ITBarcode.dll,将ChineseLabel, JapaneseLabel, EnglishNumericLabel, BoxAndLine, ImageLabel, ZPLCommandText, BarcodeTester, 将它们分别加入到Form中即可,在ChineseLabel中: CharacterSize为字符大小, ChineseText为中文字符串, Rate为放大倍数, RotateDegrees为转角.
- JapaneseLabel: 只能在支持Unicode的Windows中使用. 其中: JapaneseText为日文字符串, 其它与ChineseText相同.
- EnglishNumericLabel中: LabelType为:BarcodeLabel表示条形码, TextLabel表示英文或数字文本. TextSource: 文本的内容有两种: FIX表示固定文本, SQL表示打印时才确定. 如果文本内容不固定, 要指定DataField. 如果为固定的文本内容, 由LabelText指定. 还可以指定Label的Font: LabelFont, 和倍率: LabelScale. 对于Barcode, 可以指定其高度: BarcodeHeight, Barcode的宽度: BarcodeModuleWidth. 其它内容选择Default.
- BoxAndLine: 用来打印 Line和Box
- ImageLabel: 用来打印bmp文件, 只能打印单色的bmp文件.
- ZPLCommandText为输入以上没有包括的其它打印命令.
- BarcodeTester用来测试各控件的位置是否合适并保存为XML文件. 其中PrintBarcode用来测试Barcode, 可选的打印语言有: ZPLII和EPL2. SaveToXmlFile将设计好的标贴保存为XML文件. 打印标贴时使用这个XML文件做为标贴的定义. 在测试时, 如果要从Database中取数据, 要设定SqlText为SQL语句.还有就是生成字库和发送字库的。这主要是用在打印中文字上。
具体打印代码可以参考上一篇示例代码。
这个可以应付大部分企业的要求。 但仍有其局限性,如中文字无法加粗,EPL不能打QRCode(其实我没找到EPL如何打QRCode.)
不知道各位是如何在程序中实现条码的打印的呢?还有没有更简便的?
如有疑问可以提出,对本文的DLL有兴趣的,可以留下邮箱。