Выполнить резку на термопринтере

Я хочу выполнить резку на термопринтере Custom TG2460-H с помощью команд esc.

Согласно документации команда для полного обрезания и автоматического перемещения бумаги назад - 0x1c 0xc0 0x34. Однако, если я отправлю эти команды после печатаемых строк, они ничего не сделают. Команда для полного обрезания (без возврата бумаги, команда 0x1B 0x69) работает нормально, но иногда (не всегда) она обрезает бумагу до конца отпечатка, и я не знаю почему. Я попытался поставить несколько пустых строк в конце, но это делает билет очень длинным, когда принтер автоматически перемещает бумагу для выполнения резки.

Есть идеи решить проблему?


person Gran J    schedule 30.06.2020    source источник


Ответы (1)


У меня нет документации для этого принтера, но, скорее всего, это примечание, подобное приведенному ниже.
GS V

Выберите режим обрезки и вырезайте бумагу
[Примечания для всех]

  • Когда выбран стандартный режим, эти команды доступны только при обработке в начале строки.

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


С другой стороны, в приведенной выше команде есть параметр, который подает бумагу перед обрезкой и возвращает бумагу после обрезки, и можно указать количество единиц для подачи бумаги.
Если ваш принтер имеет такую ​​возможность, попробуйте используй это.

‹Функция D› Подает бумагу в [положение обрезки + (n × вертикальное перемещение)] и выполняет обрезку бумаги, затем перемещает бумагу в положение начала печати путем обратной подачи.


Если ваш принтер не имеет такой возможности, попробуйте следующую команду в качестве команды для печати оставшихся данных в буфере принтера и перемещения их в начало строки:
ESC J

Распечатать и подать бумагу

Печатает данные в буфере печати и подает бумагу [n × (единица перемещения по вертикали или горизонтали)].

Если вы укажете 0 в качестве количества единиц для подачи параметра, он будет короче, чем простая команда перевода строки на пробел между строками (около 6 точек).

person kunif    schedule 30.06.2020