Код на экране распознаётся мгновенно, а с оттиска — через раз или вовсе никогда. Так бывает почти всегда по одной из шести причин, и пять из них закладываются ещё в макете, задолго до резины и краски. Ниже — как их различить и что править в файле.
Сначала отделите макет от оттиска
Проверка занимает три минуты и сразу показывает, где искать виноватого.
- Наведите камеру на экран. Откройте макет в масштабе примерно 1:3 и попробуйте считать код. Не читается даже так — дело в самом рисунке: содержимое, инверсия, посторонние элементы.
- Распечатайте в реальном размере. Лист обычной офисной бумаги, масштаб 100 %, без «вписать в страницу». Читается на экране, но не на распечатке — виноват размер модуля.
- Поставьте оттиск на ту же бумагу. Читается распечатка, но не оттиск — вопрос к клише, краске и нажиму.
Дальше — сами причины, от самой частой к самой редкой.
Причина 1. Модуль мельче 0,4 мм
Абсолютный чемпион. Код измеряют целиком, а читаемость определяет одна клетка — модуль. Число клеток растёт вместе с длиной содержимого: 14 байт умещаются в сетку 21 × 21, 26 байт требуют 25 × 25, 42 байта — 29 × 29. Прибавьте тихую зону по четыре модуля с каждой стороны, и физический размер клетки посчитается делением.
Для штемпельной краски рабочая граница — 0,4 мм на модуль. Проверяется в уме: код 14 мм со ссылкой из 20 знаков — это 33 клетки, то есть 0,42 мм. Тот же код на 12 мм даёт 0,36 мм, и рисунок начинает «плыть» при первом же прикосновении к бумаге.
Что делать: сократить содержимое до короткой ссылки либо увеличить код на два-четыре миллиметра. Уменьшать уровень коррекции ради экономии места не стоит — выигрыш копеечный, а запас прочности исчезает.
Причина 2. Краска растекается и съедает просветы
На бумаге каждый тёмный модуль оказывается чуть крупнее, чем в файле: краска уходит в волокно и добавляет по 0,05–0,15 мм к каждой стороне. Это явление в типографии называют растискиванием, и на мелком рисунке оно смертельно: белые промежутки между клетками сужаются вдвое, а местами исчезают.
В макете растискивание не видно совсем — оно проявляется только на оттиске, поэтому его закладывают заранее, выбирая модуль с запасом. Именно из-за него граница 0,4 мм выше рекомендаций для типографской печати, где хватает 0,25–0,3 мм.
Что делать: увеличить код, а не «утоньшать» рисунок. Если оттиски ставят на рыхлую бумагу — например, на бланки из вторичного сырья, — прибавьте ещё пару миллиметров: такая бумага впитывает краску сильнее и размывает границы клеток.
Причина 3. Тихой зоны нет или в неё что-то залезло
Тихая зона — белое поле шириной в четыре модуля вокруг кода. По ней сканер понимает, где рисунок начинается и заканчивается. Если поле схлопнулось, распознавание срывается даже при идеальном модуле.
Ломают тихую зону обычно тремя способами: прижимают код вплотную к кольцевой надписи, ставят рядом рамку или разделительную линию и, реже, кладут код поверх заливки. На круглой печати опасна ещё и внутренняя окружность: если код поставить впритык к ней, зона окажется съеденной с четырёх сторон сразу.
Что делать: оставить вокруг кода пустое поле не меньше трёх миллиметров и держать тихую зону включённой. Выключать её имеет смысл только тогда, когда белое поле уже обеспечено самим макетом.
Причина 4. Инверсия и слабый контраст
Светлый код на тёмном фоне — красивый приём, который не работает: подавляющее большинство камер ищет тёмные модули на светлом фоне. Вторая версия той же ошибки — код на цветной подложке или на фотографии, где контраст плавает от участка к участку.
Отдельная история — цвет краски. Синяя и чёрная дают камере максимальный перепад яркости, фиолетовая уже хуже, красная на белом иногда распознаётся с третьей попытки. На печати это не запрещено, но если код важен, выбирайте тёмную краску.
Что делать: тёмные модули, светлый фон, никаких подложек под кодом. Если макет цветной, оставьте под код белый прямоугольник — он же послужит тихой зоной.
Причина 5. Уровень коррекции выбран наугад
QR-код умеет восстанавливать часть повреждённых данных: уровень L вытягивает примерно 7 % кодовых слов, M — 15 %, Q — 25 %, H — 30 %. Логика подсказывает взять максимум, но на печати это ловушка.
Чем выше уровень, тем больше служебных данных и тем выше версия при том же содержимом: код перескакивает, скажем, с сетки 25 × 25 на 33 × 33. При фиксированном физическом размере модуль уменьшается, и вы теряете больше, чем выигрываете. Уровень L опасен обратным: запаса не остаётся, и первая же потёртость клише выводит код из строя.
Что делать: M — рабочий выбор для оттиска, Q — для шершавой бумаги и активной эксплуатации. Уровень H оправдан только на крупном коде от 20 мм.
Причина 6. Кривой или неполный оттиск
Последняя причина живёт уже не в файле. Оснастку прикладывают под наклоном, нажимают неравномерно, ставят печать на сгиб или на кромку подшитого документа — и часть модулей не пропечатывается. Код терпит потерю до четверти рисунка при уровне Q, но не терпит потери угла с поисковым узором: три крупных квадрата по углам — это то, за что сканер цепляется в первую очередь.
Сюда же относится растровый код в макете. Если рисунок вставлен картинкой, а не контуром, при изготовлении клише он масштабируется с интерполяцией, границы модулей размываются, и оттиск получается мягким. Векторный код такого не допускает: контур режется по своим границам.
Что делать: ставить оттиск на ровную поверхность с равномерным нажимом и следить, чтобы в файле код был контуром. В конструкторе он всегда вектор — хранится содержимое, а не картинка.
Таблица: по симптому к причине
| Что видно | Причина | Правка |
|---|---|---|
| На экране читается, на бумаге нет | Мелкий модуль или растискивание | Увеличить код, сократить содержимое |
| Рисунок выглядит как серое пятно | Краска съела просветы | Код крупнее, бумага плотнее |
| Камера «видит» код, но не открывает | Тихая зона нарушена | Отодвинуть текст и рамки на 3 мм |
| Не распознаётся вообще, даже с экрана | Инверсия или подложка | Тёмный код на белом фоне |
| Работал раньше, перестал со временем | Износ клише при уровне L | Перевыпустить клише с уровнем Q |
| Читается только в половине оттисков | Неравномерный нажим | Ровная поверхность, свежая подушка |
Пример: акт с кодом, который читался только у бухгалтера
Транспортная компания поставила код на печать, чтобы контрагенты быстро попадали на страницу с реквизитами. Первый месяц жалоб не было, на втором посыпались: у одних читается, у других нет. Разницу нашли не сразу.
Оказалось, что бухгалтерия ставит оттиск на плотный офисный лист, а водители — на копии путевых листов, отпечатанные на тонкой рыхлой бумаге. Модуль был 0,38 мм, то есть уже на грани; на плотной бумаге он держался, на рыхлой краска расплывалась и склеивала клетки.
Клише перевыпустили: содержимое сократили с полного адреса страницы до короткой ссылки, размер кода подняли с 12 до 15 мм, уровень коррекции — с M на Q. Модуль вырос до 0,45 мм, и код начал читаться с обоих типов бумаги.
Что проверить перед скачиванием макета
- Длина содержимого: чем короче строка, тем крупнее клетки. Кириллица весит по два байта на букву.
- Размер кода в миллиметрах, а не «на глаз» — и пересчёт модуля с учётом тихой зоны.
- Пустое поле вокруг кода: ни текста, ни линий, ни рамок ближе трёх миллиметров.
- Тёмные модули на светлом фоне, без подложек и градиентов.
- Уровень коррекции M или Q, а не «максимальный на всякий случай».
- Контрольная распечатка 1:1 и проверка телефоном под углом, а не строго сверху.
Перед скачиванием конструктор сам показывает список замечаний к макету: мелкий код, элементы за краем печати, тексты-заготовки. Остальные пункты чек-листа макета печати разобраны в статье о двенадцати проверках перед заказом, а требования к самому коду — в материале о печати с QR-кодом.
Частые вопросы
Код не читается только моим телефоном — это нормально?
Проверьте вторым устройством и при другом освещении. Если читают все, кроме одного, дело в камере; если никто — в макете или оттиске.
Помогает ли увеличить уровень коррекции до H?
Обычно нет: рисунок становится плотнее, модуль мельче, и код читается хуже, чем при M.
Можно ли уменьшить тихую зону, если места мало?
Лучше уменьшить сам код и оставить поле. Без тихой зоны сканер не находит границу рисунка.
Почему код читается с макета, но не с оттиска?
Между ними стоит краска: она расширяет модули на десятые доли миллиметра и съедает просветы.
Спасёт ли лазерная гравировка вместо фотополимера?
Она даёт более чёткий край клетки, но не отменяет расчёт модуля: слишком мелкий код не спасёт ни одна технология.
Итог
Пять причин из шести лечатся в макете, и все пять — арифметикой: короче строка, крупнее модуль, шире тихая зона, темнее краска, разумнее уровень коррекции. Шестая живёт в руке, которая ставит оттиск. Проверяйте код на распечатке 1:1 до заказа клише — переделка макета стоит минуты, переделка резины стоит дня.