-1

我有一台带有 API 的 Datecs DPP-450 ESC POS 热敏打印机。

我可以通过蓝牙成功打印,因为 API 提供了用于连接、打印文本和边框的简单代码,但我无法将页面高度设置为大于 2000+(我认为是点)。我正在打印发票,我需要大于 2000 的高度。我在互联网上搜索并发现:

ESC W xL xH yL yH dxL dxH dyL dyH。

在页面模式下设置打印区域

[范围] 0≤ xL xH yL yH dxL dxH dyL dyH ≤255(dxL=dxH=0或dyL=dyH=0除外)

【说明】 水平起始位置、垂直起始位置、打印区域宽度和打印区域高度分别定义为x0、y0、dx、dy。可打印区域的每个设置计算如下:

x0 = [(xL + xH x 256) x (水平运动单位)]

y0 = [(yL + yH x 256) x (垂直运动单位)]

dx = [(dxL + dxH x 256) x (水平运动单位)]

dy = [(dyL + dyH x 256) x (垂直运动单位)]

,但无法使其工作。

没有太多代码可以显示,我试过了:

printer.reset();
printer.write(new byte[]{0x1B});
printer.write(new byte[]{0x57});
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{64}); OR new byte[]{0x36, 0x34}
printer.write(new byte[]{3});  OR new byte[]{0x33}
printer.write(new byte[]{96}); OR new byte[]{0x39, 0x36}
printer.write(new byte[]{11}); OR new byte[]{0x31, 0x31}
printer.selectPageMode();  // make printer enter PAGE MODE

任何关于获得 5000 左右高度的正确方法的想法?作为一种解决方法,我可以逐个打印,但我确信有更好的方法。

4

1 回答 1

0

亚历克斯,

页面模式下打印的最大尺寸为 832x1732 点(第 47 个命令解释),根据文档:dpp450.pdf

我也在一个 DPP-450 项目中工作,一些高级的东西真的很难发现,API 并没有涵盖所有内容,如果你需要更高级的东西,你需要使用“字节到字节”的命令,我猜。

于 2017-02-22T20:16:31.367 回答