EAN-13 в JavaScript с использованием ESC/POS не показывает цифры ниже?

Я пытаюсь распечатать штрих-код EAN-13 из приложения JavaScript на термопринтере с помощью команды ESC/POS GS k m d1...dk NUL.

В соответствии со спецификацией приложения все команды должны проходить через подключаемый модуль Bluetooth, используя только HEX.

В настоящее время я могу распечатать штрих-код, но он не показывает цифры ниже, и все строки штрих-кода имеют одинаковую высоту. У меня сложилось впечатление, что EAN-13 имеет числа, разделенные на 3 части с линиями разной высоты между ними.

ОБРАЗЕЦ ШТРИХКОДА: 6921426623090

КОМАНДА: 0x1D,0x77,3,0x1D,0x68,160,0x1D,0x6B,2,0x36,0x39,0x30,0x31,0x30,0x32,0x38,0x30,0x37,0x35,0x38,0x33,0x31,00,0x0a,0x0a

ОБЪЯСНЕНИЕ КОМАНДЫ:

0x1D,0x77,3,   // barcode width
0x1D,0x68,160, // barcode height
0x1D,0x6B,2,0x36,0x39,0x30,0x31,0x30,0x32,0x38,0x30,0x37,0x35,0x38,0x33,0x31,00, // ean-13 barcode: GS k m d1...dkNUL
0x0a,0x0a // space after

Я вполне уверен, что это как-то связано с моей реализацией GSkmd1...dkNUL:

GS // 0x01D
k  // 0x6B
m  // 2
d1...dk // barcode translated to hex: 0x36,0x39,0x30,0x31,0x30,0x32,0x38,0x30,0x37,0x35,0x38,0x33,0x31
NUL // 00

ТЕКУЩАЯ РАСПЕЧАТКА:

Текущая распечатка

ЖЕЛАЕМАЯ РАСПЕЧАТКА:

введите здесь описание изображения

Буду признателен за любые отзывы о том, как напечатать штрих-код в соответствии с предоставленным изображением - с цифрами ниже и линиями разной высоты между ними.


person HakBon    schedule 26.06.2019    source источник


Ответы (2)


Как оказалось, невозможно напечатать (неплоские) штрих-коды EAN-13 с помощью команд print barcode команды ESC/POS. Единственный вариант — распечатать изображение неплоского EAN-13 с помощью команд print image файла ESC/POS.

person HakBon    schedule 03.07.2019

Эти символы называются HRI (человекочитаемая интерпретация).

Неплоский штрих-код означает, что HRI накладывается на штрих-код и печатается.

Если это так, было бы эффективно создать изображение с растровым изображением и распечатать его.

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

  • Войти в режим страницы
  • Укажите диапазон печати
  • Распечатать штрих-код
  • Отрегулируйте положение начала печати
  • Перезаписать часть распечатанного штрих-кода пустым битовым изображением
  • Отрегулируйте положение начала печати
  • Распечатать строку штрих-кода в пустой области
  • Распечатать буфер режима страницы и выйти из режима страницы

Но действительно ли вам нужен неплоский штрих-код для такого макета печати?

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

См. следующее.
Соответствующая страница на японском языке.
GS H
GS f

GS H n : выбор позиции печати символа HRI
Если вы печатаете символы под штрих-кодом, n равно 0x02 или 0x32.

0x1D 0x48 0x02 or 0x32

GS f n : выберите шрифт символов HRI
Укажите это, если хотите изменить шрифт символов, печатаемых со штрих-кодом.
Значение n зависит от принтера.

0x1D 0x66 0x00-0x04 or 0x30-0x34 or 0x61-0x62

person kunif    schedule 21.07.2019