我正在生成 ZPL 命令字符串,打印机 (ZT410) 没有打印发送的所有标签。我只需遍历以下代码并将字符串发送到打印机(通过端口 9100 上的 IP 地址)。每个循环都包含一组唯一的数据,其中行['item_desc'],行['our_part_number']和零件号每次迭代都会更改(所以我不只是尝试打印522个相同的标签)。
command += '^XA';
command += '^LT23';
command += '^FO125,30';
command += '^A0N,85,50';
command += '^FB950,1,,C'
command += '^FD'+row['item_desc']+'^FS';
command += '^FO20,260';
command += '^A0N,50,50';
command += '^FD'+part_number+'^FS';
command += '^FO122,260';
command += '^A0N,50,50';
command += '^FB950,1,,C'
command += '^FD'+row['our_part_number']+'^FS';
command += '^FO935,255';
command += '^A0N,25,25';
command += '^FB200,2,,R'
command += '^FDMy Company Name Phone_Number ^FS';
command += '^FO'+margin+',105';
command += '^BY3';
command += '^B3N,N,144,N,N';
command += '^FD'+row['our_part_number']+'^FS';
command += '^XZ';
我的测试批次是 522 个标签。 在添加公司信息和条形码之前,打印机打印了所有 522 个标签,但使用上面的代码,它只打印了 485 个标签。
极限在哪里? 可以发送到端口的字符串长度是否有限制? 我是否应该在每个标签后添加回车符和换行符(以便打印机知道在哪里断开字符串)? 还是有 IP:端口超时?
打印机打印标签,但不以任何方式响应发送命令的端口。 如果我将标签分解为单独的命令字符串并按顺序发送它们而不暂停,则打印机不会打印任何标签。是否可以查询打印机以了解何时发送下一个命令字符串?
通常,我只会尝试反复试验,但在这种情况下,这种方法既昂贵又浪费......
尝试
^PQ522
作为 ^XZ 之前的命令。
我建议你只发送一次。发送 522 次(甚至 485 次)可能有点浪费。
字段并将标签本地保存在打印机上(使用 ^DF),然后只需调用标签并在 FN 字段中填充动态数据