Java: Как напечатать символ евро на чековом принтере - PullRequest
0 голосов
/ 03 июля 2019

У меня есть Java-приложение, которое должно печатать символ евро на Epson Tm20-II.

Я пытался установить переменную euro, чтобы включить ее в строку.

метод printString в классе PrintService

 public void printString(String printerName, String text) {

        // find the printService of name printerName
        DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
        PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();

        PrintService printService[] = PrintServiceLookup.lookupPrintServices(
                flavor, pras);
        PrintService service = findPrintService(printerName, printService);

        DocPrintJob job = service.createPrintJob();

        try {

            byte[] bytes;

            // important for umlaut chars
            bytes = text.getBytes("CP437");

            Doc doc = new SimpleDoc(bytes, flavor, null);


            job.print(doc, null);

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

Основная функция:

        String euro = "\u20ac";
        PrinterService ps = new PrinterService();
        String toPrint = new String();

        toPrint = ("Hello world, 5" + euro);

        ps.printString(printer, toPrint);

Вместо печати € печатает?

...