Intermec 打印机中的 DP 命令问题

4

我正在使用Intermec Direct Protocol向打印机发送打印命令。这包括文本和条形码。

对于12位数字,打印正常工作。但是,当我尝试打印13到18位数字时,没有输出。也不会抛出任何异常。

以下命令可以完美地工作。此处的“BARSET”具有长度为20的数字。

INPUT ON: CLIP ON: CLIP BARCODE ON:
. CLL:
. PP23,1184: AN7:
. PP23,1184: AN7:
. PP23,1184: AN7: 
. DIR1: NASC 1252:
. FT 'Swiss 721 BT':
. FONTSIZE 8: FONTSLANT 0:
. FONTSIZE 36: PP104,330
. BARSET 'CODE128C',2,1,4,305: PB CHR$(128);\”00100280283000550596\":
. PF1\r\n 

然而,当我将BARSET的长度更改为包含13个数字的数字时,根本没有输出。
INPUT ON: CLIP ON: CLIP BARCODE ON: 
. CLL: 
. PP23,1184: AN7: 
. DIR1: NASC 1252: 
. FT 'Swiss 721 BT': 
. FONTSIZE 8: FONTSLANT 0: 
. FONTSIZE 36: PP104,330: 
. BARSET 'CODE128C',2,1,4,305: PB CHR$(128);\”1234567891234\": 
. PF1\r\n 

首先将此字符串变量转换为字节数组,然后将该字节数组提供给OutputStream,OutputStream进而打印标签。

一切都很正常,除了BARSET,当给定的值为13到18位数字时,它不会打印标签,也不会抛出任何异常。

1个回答

0

Code 128 C要求数字数量为偶数,这是规范的一部分。如果您需要打印奇数个数字,则需要使用不同的符号编码,例如Code 128 B(该编码比较稀疏)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接