我遇到了 Zebra 打印机 RW220 无法打印塞尔维亚拉丁字符(例如 čćžšđ)的问题。我开发了一个使用打印机的Android应用程序。打印部分基于Zebra SDK。这是代码的一部分:
private byte[] getConfigLabel() {
PrinterLanguage printerLanguage = printer.getPrinterControlLanguage();
byte[] configLabel = null;
if (printerLanguage == PrinterLanguage.ZPL) {
try {
configLabel = "^XA^FO17,16^GB379,371,8^FS^FT65,255^A0N,135,134^FDTEST^FS^XZ".getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (printerLanguage == PrinterLanguage.CPCL) {
String cpclConfigLabel = "! 0 200 200 780 1\r\n" + "T ARIAL9PT.CPF 0 60 10 ABCČĆŽŠĐ\r\n"
+ "PRINT\r\n";
configLabel = cpclConfigLabel.getBytes();
}
return configLabel;
}
使用的字体是 Arial,我使用 Zebra Utilities 将其转换为 CPF,以便与打印机一起使用。我还将字符添加到字体中,但它不打印它们。在此示例中,它仅打印 ABC。并且使用系统字体,它会打印一些奇怪的字符。我还尝试在“T ARIAL9PT.CPF 0 60 10 ABCČĆŽŠĐ\r\n”之前添加“ENCODING UTF-8”行,但它没有执行任何操作,与系统字体相同。
我怎样才能让它打印塞尔维亚拉丁字符?谢谢。
编辑:
ISO-8859-2 打印 Č 和 Ć,但不打印 Ž。
最后解决了,解决方案是使用“CP1250”编码,也称为Windows-1250。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)