Рассмотрим ситуацию, с которой часто сталкиваются пользователи программных продуктов 1С, в частности 1С:Розница, после обновления конфигурации или платформы. При попытке распечатать этикетку со штрихкодом на термопринтере (например, TSC TDP-225), вместо четких прямых полосок штрихкода принтер выдает нечитаемую «вязь» или волнистые линии. При этом из режима редактирования шаблона ценника печать может проходить корректно, а из карточки номенклатуры — с сильными искажениями. Разберем по шагам, почему возникает эта проблема и какие существуют способы ее решения.
Проанализируем самую частую причину искажения штрихкодов. В большинстве случаев проблема кроется в том, что драйвер пытается обработать штрихкод не как векторный или строгий монохромный объект, а как обычную картинку со сглаживанием. Термопринтер имеет низкое разрешение (обычно 203 dpi), и любая попытка сгладить края линий приводит к «зажевыванию» пикселей и появлению волнистости.
Рассмотрим параметры страницы непосредственно в самой 1С. Часто при печати этикеток небольшого размера (например, 30х20 мм) программа пытается вписать макет в границы листа, используя автоматическое масштабирование. Из-за этого линии штрихкода сдвигаются на доли миллиметра, что критично для термоголовки.
Выясним, как настроить страницу правильно:
Это заставит 1С передавать изображение пиксель-в-пиксель, без программного сжатия, что исключит эффект волнистости.
Разберем ситуацию, когда обновление 1С принесло новую компоненту генерации штрихкодов (например, для поддержки маркировки), которая некорректно работает с вашим принтером. Если откатить релиз конфигурации нельзя (так как требуется обязательная маркировка), посмотрим на альтернативные варианты работы с компонентой.
Проанализируем ситуацию с драйверами. Иногда стандартный механизм 1С конфликтует с универсальными драйверами от Seagull Scientific. Если у вас установлены именно они, попробуйте удалить их и поставить официальные драйверы от самого производителя TSC (или сделать наоборот, если официальные работают нестабильно).
Если вы работаете в терминальном режиме (RDP), проверьте, не используется ли проброшенный (автоматически созданный «свой» принтер) с искаженными настройками (Easy Print). Часто драйвер Easy Print некорректно передает монохромные изображения. В таком случае необходимо отключить Easy Print для данного принтера и использовать прямое сопоставление драйверов.
В качестве дополнительной меры рассмотрим аппаратные настройки самого устройства. Выполните калибровку принтера под ваш тип ленты (чтобы исключить проблемы позиционирования). Затем в настройках драйвера принтера:
Применив описанные выше шаги, вы сможете локализовать причину искажений и вернуть четкую, читаемую печать штрихкодов на термопринтере в 1С:Розница.