我想用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();
}
}
}
}
答案 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#。