ESC POS Печатать специальные символы (ö)

Я новичок в печати ESC Pos. Я пишу приложение, которое печатает квитанции, и если я попытаюсь напечатать 'ö', я получу '?'. Я уже установил для Кодовую страницу значение CP437, которое должно поддерживать 'ö' в качестве символа.

В документации объясняется, как я могу печатать специальные символы, но я просто не могу заставить его работать: Вот фрагмент документа.

Редактировать 1 (добавлен код):

MainActivity.BLUETOOTH_PRINTER.BT_Write(new byte[] {0x1B, 0x52, 0x7});

Используя MainActivity.BLUETOOTH_PRINTER_BT_Write(), я могу распечатать byte[] частей, однако печать вышеприведенного кода дает мне длинную страницу (200 символов) случайного материала.

Вот полная документация: https://sparkag.com.br/wp-content/uploads/2016/06/ESC_POS-AK912-English-Command-Specifications-V1.4.pdf


person T1k33y    schedule 08.04.2020    source источник
comment
но я просто не могу заставить его работать: пожалуйста, покажите нам свой код.   -  person vanje    schedule 08.04.2020
comment
Преобразована ли кодировка строки запроса на печать в кодовую страницу 437? Пожалуйста, попробуйте все символы выше 0x80 в кодовой странице 437, а не только символы в вопросе.   -  person kunif    schedule 09.04.2020
comment
Я очень не знаком с кодировкой, что мне нужно написать {0x1B, 0x52, 0x80}?   -  person T1k33y    schedule 09.04.2020
comment
Это не команда управления принтером, а кодировка самой строки символов для печати. В настоящее время есть много статей конвертирующих в utf-8, но обязательно ли при этом конвертировать в cp437? getBytes, Java String.getBytes(charsetName) vs String.getBytes (объект Charset), Преобразование кодировки строк UTF-8 в SHIFT-JIS   -  person kunif    schedule 09.04.2020


Ответы (1)


Вероятно, это специальный символ, и для его отображения требуется «\».

person TheXDShrimp    schedule 08.04.2020
comment
Нет. Я попытался добавить кодировку Java: "\u00F6", она все равно напечатала '?'. - person T1k33y; 08.04.2020
comment
Можете ли вы заставить специальный символ появляться в вашем редакторе кода? Потому что, если вы можете, просто используйте \ перед ним. Теоретически должно работать. - person TheXDShrimp; 09.04.2020