斑马打印机塞尔维亚拉丁字符

时间:2013-03-24 17:52:25

标签: java android zebra-printers

我遇到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 10ABCČĆŽŠĐ\ r \ n”之前添加“ENCODING UTF-8”行,但它没有做任何事情,与系统字体相同。 我怎样才能打印塞尔维亚拉丁字符?感谢。

编辑: ISO-8859-2打印Č和Ć,但不打印Ž。

1 个答案:

答案 0 :(得分:2)

最后解决了,解决方案是使用“CP1250”编码,也称为Windows-1250。

相关问题