当前位置: 首页 > 知识库问答 >
问题:

从Android打印到Zebra QLn320

伏砚
2023-03-14

我目前正试图在支持bt的zebra打印机上打印Android设备上保存的图像,我遵循了文档中的示例,但我一辈子都不明白为什么它不打印。BT图标在打印机上闪烁了一段时间,所以我知道正在建立连接,但什么也没发生。当我调用printImage()函数时,我给出了图像的位置以及所需的宽度和高度。我知道该文件存在,因为我可以在imageview中看到它的显示。这是我的代码:

private void printImageTest() {

    new Thread(new Runnable() {
        @Override
        public void run() {

            try {
                Looper.prepare();
                Connection connection = new BluetoothConnection("AC:3F:A4:13:C2:24");
                connection.open();
                ZebraPrinter printer = ZebraPrinterFactory.getInstance(connection);
                printer.printImage(signatureFile, 100, 100);
                Thread.sleep(2000);
                connection.close();
                Looper.myLooper().quit();
            } catch (ConnectionException e) {
                e.printStackTrace();
            } catch (ZebraPrinterLanguageUnknownException e) {
                e.printStackTrace();
            } catch (InterruptedException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }).start();
}

共有1个答案

陆俊捷
2023-03-14

请在Image Load部分找到ZPL语言zpl编程指南的链接

连接到打印机:

BluetoothConnection printerConnection = new BluetoothConnection(printerAddress);
    printerConnection.open();

    if (!printerConnection.isConnected()) {
        throw new Exception("Could not open bluetooth connection");
    }

    //print
    ZebraPrinter printer = ZebraPrinterFactory.getInstance(printerConnection);
    PrinterLanguage pl = printer.getPrinterControlLanguage();
    if (pl == PrinterLanguage.CPCL) {

    } else {
        //byte[] configLabel = createZplReceipt().getBytes();
        byte[] configLabel = zplContent.getBytes();
        printerConnection.write(configLabel);
    }

    printerConnection.close();

然后将ZPL字符串发送到打印机:

 类似资料:
  • 我们希望打印到连接在apache运行的POS打印机上。由于应用程序的设计和部署,打印应该从服务器上完成(它应该检测订单并发送到不同的打印机和不同格式的打印...账单,厨房订单,等等...)。出于这个原因和其他原因(例如,从iPad访问应用程序),我们放弃了像QZ-Print applet这样的选项,并需要直接在服务器端打印。 提前谢了。

  • 问题内容: 我正在为具有内置行式打印机的Android设备开发应用程序。我必须与此打印机进行交互,并使用它来打印收据上的详细信息,然后使用裁纸器自动剪切该收据。我已经在其中看到了一些ESC命令,但是我不知道如何执行这些ESC命令。 关于Casio设备打印机,我有三个主要问题: 1.我已经使用了内置打印机的打印代码,但是打印后切纸刀没有激活 2.我不知道如何在android中将ESC命令发送到打印机

  • 大多数相关的答案和谷歌都包含了关于这个话题的相当古老的贡献。因此,我正在寻找一种方法,使我的Android应用程序打印收据(58毫米宽)通过蓝牙热收据打印机。是否有必要使用带有第三方API的打印机?我想买一台普通的蓝牙打印机,它可以连接到我的设备上,并使用默认的Android打印管理器为收据进行布局。有可能吗?有样本、文档或教程吗?会很感激的。提前致谢

  • 我想从web浏览器的Brother标签打印机打印标签。我知道DYMO有一个JavaScript框架,可以使从浏览器打印变得简单。但我有一个兄弟标签打印机的客户,所以我需要使它工作。 我一直在做一些测试和搜索,令人惊讶的是,关于这个主题的信息如此之少。 到目前为止,我唯一成功使用的浏览器是谷歌Chrome,因为它似乎不打印页眉和页脚。我已经安装了打印机/驱动程序,并创建了尺寸为62 x 29mm的自

  • 我有一些代码,我认为应该打印到我的兄弟打印机,但它似乎什么也做不了。它快把我逼疯了!! 任何人任何想法都请 它不会失败或出错,按它应该的方式逐行遍历每一行,只是不会打印。标签/模板可以通过usb从我的电脑直接连接到Brother打印机上打印出来。打印机为PT-9700PC 我被难住了。

  • 我正在使用Epson ePOS打印机TM-T20,我已经运行了SDK示例并且它可以工作,但是,我正在尝试编写一个小型应用程序进行打印。 打印机已成功找到,数据已成功发送,但未打印。如果有人能帮忙,我会很感激的。 这是我的代码: 显示 这是我的主要活动