Android 安卓ESC W打印区

Android 安卓ESC W打印区,android,printing,thermal-printer,escpos,Android,Printing,Thermal Printer,Escpos,我有一台Datecs DPP-450 ESC POS热敏打印机,它带有API 我可以通过蓝牙成功打印,因为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除外) [说明]水

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

我可以通过蓝牙成功打印,因为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左右的高度?作为解决办法,我可以一件一件地打印,但我相信有更好的方法。

Alex

页面模式下打印的最大尺寸为832x1732点(第47条命令说明),根据文档:


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

你使用的是什么编程语言?打印机写什么(新字节[]{0});还是新字节[]{0x30}的意思?它是否向打印机发送0x00或0x30?请说得更准确些……我已经把打印机还给你了。我请求支持在页面模式下设置更大的高度和个性化字符大小。小字体无法阅读,中等制作的发票高度为0.5米。您是否设置了不同的高度和字符大小?使用基本配置,我可以打印约1厘米高的文本,这取决于您使用的字体。字体可以“上传”到打印机,我还没有尝试,因为我需要一个有线usb 10针串行我猜。我用这台打印机打印50毫米高的标签,我没有你的问题…如果你想,我可以通过电子邮件给你发送一些android应用程序的例子,这周我与巴西供应商联系。我使用的打印机API与离子,我没有使用本机android开发,但函数调用是相同的,因为API是用java编写的…让我知道你的电子邮件发送文件。我有文档。但是在默认情况下的示例中,我可以使用printTaggedText(如果我记得正确的函数),它具有参数{s}-small,nothing-normal,{h}-high,{w}-wide。我需要一个介于{s}和普通之间的字符大小来打印发票。对于小文本,老年人在阅读时会遇到问题。对于普通文本,20位发票将超过0.5米。我已经归还了打印机,不会再使用了,因为我被支持团队失望了。我不是在不提供支持的产品上开发昂贵的东西。