Переход с версии 1С:Управление торговлей 11.3 на 11.4 часто сопровождается неприятным сюрпризом: штрихкоды на этикетках и ценниках начинают печататься в низком качестве. Пользователи замечают «зубчатость» линий, размытость цифр, которые выглядят как на старом матричном принтере, и, самое главное — полную невозможность считывания штрихкода сканером при малейшем изменении масштаба печати (даже на 1%).
В этой статье мы подробно разберем, почему это происходит и какими методами можно вернуть четкость печати штрихкодов, чтобы складское оборудование работало без сбоев.
Проанализируем ситуацию с технической точки зрения. В старых версиях (УТ 11.3) для формирования штрихкода использовалась внешняя компонента 1CBarCode.dll (ActiveX). В новых релизах УТ 11.4 (начиная с 11.4.8 и выше) 1С перешла на использование нативного механизма платформы. Теперь штрихкод генерируется не как векторный объект, а как картинка (растровое изображение).
Основная проблема заключается в том, что при изменении масштаба страницы при печати происходит интерполяция пикселей изображения штрихкода. Если текст при масштабировании 101% остается читаемым, то для штрихкода появление даже одного ряда «серых» пикселей по краям черных полос делает его невидимым для сканера. Рассмотрим способы решения этой проблемы по шагам.
Если печать этикеток происходит в сессии удаленного рабочего стола (RDP), первым делом необходимо проверить настройки перенаправления принтеров. Технология Easy Print часто упрощает жизнь системным администраторам, но она крайне негативно влияет на передачу графических объектов штрихкодов, превращая их в набор квадратов.
Разберем процесс отключения Easy Print через редактор групповых политик:
gpedit.msc.Это заставит сервер искать и использовать родные драйверы принтера, установленные на сервере, что значительно повышает точность передачи графики на локальный принтер этикеток.
Часто проблема «квадратных» цифр и размытых штрихов кроется в настройках самого принтера (Zebra, TSC, Xprinter, Godex). По умолчанию драйверы пытаются имитировать градации серого цвета с помощью точек — этот процесс называется дизерингом (Dithering).
Выясним, как правильно настроить драйвер для печати штрихкодов:
Важно: Это заставит принтер печатать только чистым черным цветом. Все серые пиксели, возникшие из-за масштабирования 1С, будут либо игнорироваться, либо превращаться в черные, что вернет штрихкоду необходимую контрастность.
Если после обновления размер штрихкода в редакторе изменился или он стал «схлопываться», нам нужно вручную подправить шаблон этикетки. В УТ 11.4 штрихкоды очень чувствительны к границам ячеек.
Проанализируем правила работы с макетом:
РазмерКартинки. Попробуйте переключить его из состояния «Авто» или «Растянуть» в состояние «Реальный размер». Это предотвратит программное искажение пропорций платформой.Если штатные средства 1С в УТ 11.4 продолжают выдавать неудовлетворительный результат, мы рекомендуем воспользоваться профессиональным подходом — печатью штрихкода с помощью специальных шрифтов (например, EAN13.ttf или Code39.ttf).
Рассмотрим, как это реализовать:
EAN13) и установите нужный размер кегля.Поскольку шрифт — это векторный объект, такие штрихкоды идеально масштабируются без потери качества, не боятся изменения масштаба страницы в настройках печати и всегда имеют идеально ровные края цифр под штрихами.
Разберем еще один нюанс: 1С генерирует картинку штрихкода, ориентируясь на системное разрешение (обычно 96 DPI). Однако принтеры этикеток работают с разрешением 203 DPI или 300 DPI. Несоответствие плотности точек при программном формировании изображения приводит к эффекту «ступенек».
Чтобы минимизировать этот эффект, рекомендуется:
Подводя итог, можно сказать, что проблема в УТ 11.4 решается комплексным подходом: от правильной настройки передачи данных по RDP до тонкой подстройки драйверов принтера и макетов этикеток. Применение этих рекомендаций позволит вам добиться стабильного считывания штрихкодов любым типом сканеров.