从Android设备打印时设置热敏打印机的纸张尺寸

时间:2017-10-09 05:28:27

标签: android thermal-printer

我正在从Android平板电脑打印发票到连接在同一网络上的以太网热敏打印机。

使用以下代码时,一切正常。

  MyHsWifiPrintDriver hsWifiPrintDriver = MyHsWifiPrintDriver.getInstance();
    boolean connection = hsWifiPrintDriver.WIFISocket(printeraddress, 9100);

    if(connection==false)
    {
        insert(printeraddress,arr,ordertype,kitchenname,section,"Table - "+texttablenumber.getText().toString()
                ,invno,date,time,uname,textwaiter.getText().toString());
    }

    else {

        try {
            //setting font size

            hsWifiPrintDriver.WIFI_Write(new byte[]{(byte) 29, (byte) 33, 16});
            hsWifiPrintDriver.WIFI_Write(new byte[]{(byte) 27, (byte) 97, 1});


            hsWifiPrintDriver.WIFI_Write("\n-----------------------------------------".getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write(("\n" + ordertype).getBytes("UTF-8"));


            hsWifiPrintDriver.WIFI_Write("\n-----------------------------------------".getBytes("UTF-8"));
            hsWifiPrintDriver.WIFI_Write(("\n" + kitchenname).getBytes("UTF-8"));


            hsWifiPrintDriver.WIFI_Write("\n-----------------------------------------".getBytes("UTF-8"));
            hsWifiPrintDriver.WIFI_Write(("\n" + section).getBytes("UTF-8"));


            hsWifiPrintDriver.WIFI_Write("\n-----------------------------------------".getBytes("UTF-8"));
            hsWifiPrintDriver.WIFI_Write(("\nTABLE - " + texttablenumber.getText().toString()).getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write("\n-----------------------------------------".getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write(new byte[]{(byte) 27, (byte) 97, 0});
            hsWifiPrintDriver.WIFI_Write(("\nBill No:" + invno).getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write(("\nDate" + datenew).getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write(("\n" + timenew).getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write(("\nUser:" + uname).getBytes("UTF-8"));

            hsWifiPrintDriver.WIFI_Write(new byte[]{(byte) 10});
            hsWifiPrintDriver.WIFI_Write(new byte[]{(byte) 27, (byte) 105});

            hsWifiPrintDriver.stop();

        } catch (Exception e) {

            e.printStackTrace();
        }
    }

我的问题是当我关闭打印机并打开打印机时,打印机的纸张尺寸会变大。所以有些内容丢失了。几秒钟后(不到一分钟),它将恢复正常。

但从Windows PC打印时它的工作正常。

此问题在打印机制造商更新打印机以支持阿拉伯语后启动。可能是制造商可以设置它..

我的问题是, 如何在从Android打印之前以编程方式设置纸张尺寸?

其80毫米热敏打印机。

下面附有打印机手册。 Click here to view printer manual

0 个答案:

没有答案