ZPL - 如何格式化 Code 93 条码 (^BA) 以适合标签

ZPL - How to format a Code 93 barcode (^BA) to fit the label

我正在使用 ZPL - Zebra 编程语言 格式化 Code 93 条形码 ^BA 以驻留在标签。

我知道我可以使用 ^BY 设置默认模块宽度。我的问题是 ^BY1 使条形码变小而难以阅读,而 ^BY2 使它对于标签来说太大了。

这是代码:

^FO15,110^BY2,3,35^BAN,35,N^FD001EC0A688E2^FS

我希望我可以在 ^BY 中使用小数值,但这似乎不可能。

一些条码如 Code 128 ^BC 有一个模式参数可以根据数据更好地打包条码,但 ^BA 没有。

我看到一些二维码 (^BQ) 确实有放大系数参数,但 ^BA 也没有。

有没有其他方法可以用比 ^BY 更小的步长来设置宽度?

标签宽 38 毫米,高 19 毫米,DPI 为 203(8 dots/mm),数据始终为 12 个十六进制字符 [0-9 和 A-F]。

你试过^BY2,2了吗?这将使用较小的比率,但基数较大。

如果您想要更详细的答案,您需要提供:DPI、打印宽度和您尝试编码的最大数据量。

^BY 是否允许在第二个参数(2.0 到 3.0)中使用小数 仅适用于可变比率条形码和代码-93 是固定比率。

问题是你需要根据来思考。将窄条宽度设置为 2(如 ^BY2)意味着宽条为 4 或 6 个点(^BY2,2 或 ^BY2,3),因此物理结果为数据内容总是 (3 bars + 3 spaces)*datalength 转换为特定数量的点。

点距一般为203dpi,但也有300dpi的(你不用说你用的是什么型号)。因此打印时的条码宽度直接取决于你使用的数据量和条码类型。它不像 1200dpi 常见的激光打印机 - 点大六倍。

所以 - 你需要说明你可以处理多宽,你正在使用哪种模型以及你的数据特征是什么(你的示例显示 12 个字符的十六进制 - 你是使用完整的 ASCII 还是你可以调整和使用仅限数字?)您是否卡在 code-93 上,或者其他一些编码是否可以?