Intermec 打印机中的 DP 命令问题

Posted

技术标签:

【中文标题】Intermec 打印机中的 DP 命令问题【英文标题】:DP command issue in Intermec printer 【发布时间】:2016-11-18 10:31:11 【问题描述】:

我正在使用 Intermec 直接协议向打印机发出打印命令。它包含文本和条形码。

对于 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 ,然后输出标签。

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

【问题讨论】:

【参考方案1】:

代码 128 C 需要偶数位数。这是规范的一部分。如果您必须打印奇数位数,则需要使用不同的符号系统,例如代码 128 B(密度较小,fwiw)。

【讨论】:

以上是关于Intermec 打印机中的 DP 命令问题的主要内容,如果未能解决你的问题,请参考以下文章

Intermec PM4i ASCII 符号打印

Intermec PB42 打印图像

如何通过 USB 使用 C# 将原始 IPL 发送到 intermec pm4i 打印机

使用 Intermec 打印语言版本 12 在字段中居中非固定宽度字体

通过 LinePrinter API 将条码打印到 Intermec PB20

如何在 Intermec PM4i 打印机上打印 QR 码