Программирование ESC / P! - PullRequest
0 голосов
/ 11 мая 2011

Почему мне нужно его использовать, потому что для некоторых принтеров, использующих TPrinter, печатает какой-то странный иероглиф в начале области печати. ​​

Моя проблема в том, что если я посылаю какие-то команды, ничего не происходит.

ESC E (# 27 # 69) - Отправка этой escape-последовательности не сработала, как я ожидал. Он удалил первую букву, а остальная часть строки стала жирной. например. Здравствуйте -> ello . После того, как я изменил его на ESC E ESC (# 27 # 69 # 27), он работал нормально. Этот пример мне удалось выяснить, но ...

пытается выбрать таблицу символов "ESC t n" (# 27 # 116 n), чтобы "ääöü" работал. Эта команда просто не работает. Ничего не произошло! И эта команда поддерживается esc / p, esc / p 2 и 9-pin esc / p, поэтому она должна работать просто отлично.

Руководство можно найти здесь .

Если кому-то когда-либо нужно было использовать команды esc / p, то, возможно, можно пролить свет на то, как с ними работать!

Заранее спасибо!

EDIT:

В моем предыдущем посте я задавал более или менее тот же вопрос, хотя ответы были о том, как я отправлял команды на принтер. (Я поменяю там свой вопрос в соответствии с ответами!)

Я принял ответ Кена, потому что он утверждал, что способ передачи команд был не лучшим, и я заставил его работать с командой Escape. Проблема заключалась в том, что после попытки использовать мою программу с другим принтером она не работала должным образом, потому что она использует TPrinter.Begindoc и EndDoc.

Так что на самом деле я должен использовать другое решение, с которым мне помог Роб Кеннеди!

РЕДАКТИРОВАТЬ 2:

Как оказалось, я использовал неправильное руководство, где команды немного отличаются (хотя все еще поддерживают esc / p, как он заявляет). Спасибо всем за помощь!

PS! У меня все еще есть вопрос: мне нужна таблица символов, где

245 = õ
228 = ä
246 = ö
252 = ü

iso 8859. Но в руководстве нет такой таблицы символов или подобной ей. Должен ли я выполнить некоторые манипуляции со строками и заменить, например, 228 на 132, или кто-нибудь знает что-нибудь лучше?

Я оставляю это без ответа некоторое время, а затем принимаю ответ Стукелли.

1 Ответ

2 голосов
/ 11 мая 2011

Исходя из вашего предыдущего вопроса , я думаю, что вы используете неправильные команды для управления принтером чеков EPSON TM-T70.После некоторых исследований я обнаружил, что в брошюрах и POSMicro упоминается ESC / POS.

Команда ESC / POS для включения и отключения жирного шрифта имеет третье значение, следующим образом.

ASCII    ESC  E   n
Hex      1B   45  n
Decimal  27   69  n

Where n is 0 or 1, turning bold off or on.

Вот подробная ссылка ESC / POS .

...