问题概述:使用Argox OS-214 PLUS条码打印机,运行官方示例代码,打印出的PDF417条码仅能扫描出第一个字符,而非全部数据。
现象
在PPLA指令下,调用A_Bar2d_PDF417函数生成PDF417条码,数据为“abcd12”,但扫描结果仅显示“a”。
原因
A_Bar2d_PDF417函数的参数设置不当,尤其是大小写和模式参数,导致条码生成不完整。
解决
调整A_Bar2d_PDF417函数参数,将normal参数由小写'f'改为大写'F',mode参数由小写'n'改为大写'N',并将numeric参数由2改为0。修改后的函数调用如下:
A_Bar2d_PDF417(260,20,0,0,'F',0,0,10,2,'N',0,"abcd12");同时,建议检查函数返回值以定位问题。A_Bar2d_PDF417函数返回0表示成功,其他返回值对应特定错误,如2021表示参数错误,2022表示行数错误等。
函数参数说明
- x:X坐标(100=1英寸)
- y:Y坐标(100=1英寸)
- narrow:窄条宽度,范围0~24
- width:宽条宽度,范围0~24
- normal:F表示正常,T表示截断
- security:安全级别,0~8
- aspect:纵横比,0~99,0代表1:2
- row:行数,3~90,0为自动
- column:列数,1~30,0为自动
- mode:附加功能,A(数字递增)、B(字母递增)、C(数字递减)、D(字母递减)、T(改变终结符)、N(无功能)
- numeric:跳号量,范围0~99;当mode为T时,此参数为终结符的十进制值
- data:数据字符串
返回值
- 0:成功
- 2021:x, y, narrow, width, security, aspect, column, numeric参数错误
- 2022:row参数错误
- 2023:normal参数错误
- 2024:数据必须为数字
- 2025:数据必须为数字
- 2026:mode参数错误
小结:通过修正A_Bar2d_PDF417函数的参数,特别是normal和mode的大小写,以及numeric的值,可以解决PDF417条码仅扫描一个字符的问题。建议在开发时参考函数返回值进行调试,确保参数设置正确。


