EPL - 控制 128 条码长度
Posted
技术标签:
【中文标题】EPL - 控制 128 条码长度【英文标题】:EPL - Control 128 barcode length 【发布时间】:2013-07-01 22:35:39 【问题描述】:我正在使用 EPL 直接从 Zebra 打印机(更具体地说是 LP 2844)打印条形码。我遇到的问题是我无法控制条形码的物理长度。
例如,这2行代码会打印2个不同长度的条码,即使窄条宽度、宽条宽度和内容长度设置相同。
B134,308,0,1,4,12,160,B,"00G38EX"
B136,540,0,1,4,12,160,B,"0086150"
我知道输入内容在这里很重要,但我无法弄清楚它是如何工作的。有没有办法将条形码的长度设置为固定或至少使其可控,即:给定已知的输入内容,我知道我应该期望物理长度是多少。
【问题讨论】:
【参考方案1】:你是对的 - 它是数据敏感的。
代码 128 有 3 个子字母。设置“A”包含所有 ASCII 控制代码、数字、许多符号和大写字母 (00H..5FH)。设置“B”包含“printables”(符号、数字、双写字母 - 20H..7FH)。代码“C”包含数字对 (00..99)。
start-code选择要使用的字母表,set-in-use可以通过插入START-A、START-B或START-C来切换。
遗憾的是,固件不允许强制执行代码(根据文档),并且通过分析要打印的字符串来打印最短的条码。
所以 - 在您的情况下,代码应该是 START-A/0/0/G/3/8/E/X/STOP = 7 个数据元素 START-C/00/86/15/START-A/0/STOP = 5 个数据元素
对于 7 个字符的数据,代码永远不会比第一个长,也不会比第二个短(我们不要讨论控制字符的可能性......)
选择哪一个取决于要打印的单个序列。我确信它可以解决 - 两位数的序列需要额外的 1 个元素,但可以节省 1; 4 位数成本 1 但节省 2 - 如果序列位于字符串的一端或另一端。
最好为可能的最长(全 alpha)编程并接受压缩作为奖励。
【讨论】:
以上是关于EPL - 控制 128 条码长度的主要内容,如果未能解决你的问题,请参考以下文章