ZPL - 如何正确对待条形码?

Jes*_*llo 4 zpl-ii zpl

我试图正确地证明我正在使用.Net程序中的ZPL进行打印的条形码.这是我目前的代码:

^FO10,50^FB500,1,0,R,0^AO,40,40^BY3^BCN,100,Y,N,N^FD1234567^FS^XZ
Run Code Online (Sandbox Code Playgroud)

使用条形码时,字段块似乎被忽略,但对于文本,它可以正确地证明它是正确的.有任何想法吗?

use*_*842 9

较新的斑马固件支持在第三个参数^FO^FT.如果要右对齐某些内容,请将右边指定为x参数,并将1作为第三个参数.

^XA
^BY3
^FO85,30^GB500,450,3^FS
^FO100,50^BCN,30,Y,N,N
^FD>;12345678^FS
^FO100,120N^BCN,30,Y,N,N
^FD>;123456^FS
^FO100,190^BCN,30,Y,N,N
^FD>;1234^FS
^FO570,260,1^BCN,30,Y,N,N
^FD>;12345678^FS
^FO570,330,1^BCN,30,Y,N,N
^FD>;123456^FS
^FO570,400,1^BY3^BCN,30,Y,N,N
^FD>;1234^FS
^XZ
Run Code Online (Sandbox Code Playgroud)


Gar*_*ter 2

我们公司也有同样的问题。条形码不响应字段块。根据您的示例,由于您直接使用 ZPL 命令来生成条形码(而不是条形码图像),因此您可以执行与我们类似的操作。根据我们写入的数据,我们大致知道条形码的宽度。因此,我们创建了一种方法来根据我们已知的标签宽度确定条形码的 x 轴位置。

例如:我们使用 s4M 打印机,估计整个标签宽度约为 780 点宽。因此,为了左/中/右对齐,我们采用粗略的条形码(估计)宽度并进行相应计算(左侧设置为 xaxis = 0,中心设置为 xaxis = ((780 -barcodeWidth) / 2),右侧设置为 xaxis = ((780 -barcodeWidth) / 2)合理的做法是 xaxis = (780 - BarcodeWidth)。这不是一个完美的解决方案,但至少可以满足我们的需求。通过查看更多条形码设置信息(例如数据方块大小),您的算法当然可以更加精确,列、行等...取决于您的需要。

如果您想提出一种生成条形码图像的解决方案(这也是我们现在也正在尝试提出的),那么您应该能够使用内置的 .net 图形轻松获取条形码图像的宽度功能。

  • 如果您的数据是固定长度项目(例如一致长度的 ID 值/UPC 代码等),则打印样本,用标尺确定其使用的徽章宽度的多少,然后计算(例如,打印条形码,如果它是徽章宽度的 1/5,那么它的宽度是 (badgewidthInDots * .2)。在我们的例子中,我们编码的数据因用户而异,因此我们特意修剪或填充条形码数据到精确的字符数以获得无论如何,固定宽度的条形码(为了控制尺寸以确定合理性和打印时消耗的空间的确切目的)。 (2认同)