Zebra EM 220,使用Android打印图像

时间:2013-03-20 14:50:40

标签: android printing zebra-printers

我想用Zebra EM220从我的SD卡打印图像。我试着用 GraphicsUtil.printImage("image path", 0, 0) 但我所有的尝试都失败了,我只能打印一个字符列表。

我第一次尝试使用它:

ZebraPrinter zp = ZebraPrinterFactory.getInstance(printerCo);
zp.getGraphicsUtil().printImage(path, 0, 0);

但结果是ZebraLanguageUnknownException。
所以我遵循了这个解决方案:https://km.zebra.com/kb/index?page=content&id=SO8239&actp=LIST_RECENT但是只打印了一个字符列表。

我不知道如何解决这个问题所以如果有人成功用Zebra EM 220打印图像并且可以共享代码,它应该对我有用。

我的代码:

public void print(){
    String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/myimage.jpg";
    ZebraPrinterConnection printerCo = new BluetoothPrinterConnection(printerMacAdress);
    try {
        printerCo.open();
        if (printerCo.isConnected()){
            ZebraPrinter zp = new ZebraPrinterCpcl(printerCo);
            zp.getGraphicsUtil().printImage(path, 0, 0);
            Thread.sleep(500);
        }               
    } catch (ZebraPrinterConnectionException e) {
        e.printStackTrace();
    } catch (InterruptedException e) {
        e.printStackTrace();
    } finally {
        try{
            // Close the connection to release resources.
            printerCo.close();
        } catch (ZebraPrinterConnectionException e) {
            e.printStackTrace();
        }
    }
}

}

1 个答案:

答案 0 :(得分:2)

您使用的是ZebraLink SDK吗?如果是这样,它不支持EM220。 ZebraLink SDK设计用于CPCL和ZPL打印机。您可以在此处查看支持的打印机列表:(单击中间的兼容打印机链接):http://www.zebra.com/us/en/products-services/software/adapt-software/zebralink-sdk-android.html#mainpartabscontainer_71ac=downloads

对于EM 220,您应该使用Zebra的EM 220 SDK for Android(底部链接):http://www.zebra.com/us/en/support-downloads/mobile/em-220.html

这里有一段示例代码(来自Zebra的知识库),解释了通过此SDK打印到EM 220的一种方法:https://km.zebra.com/kb/index?page=answeropen&type=open&searchid=1363808738897&answerid=16777216&iqaction=5&url=https%3A%2F%2Fkm.zebra.com%2Fkb%2Findex%3Fpage%3Dcontent%26id%3DSA316%26actp%3Dsearch%26viewlocale%3Den_US&highlightinfo=4194576,157,181#