Как оформить QR-код, чтобы он сканировался
Фирменный цвет, логотип в центре и рамка отнимают у кода запас чтения. Сколько его есть, где проходят пороги контраста и чего в нашем генераторе нет намеренно.
Черный QR-код на фирменной листовке выглядит чужим. Вокруг фирменный цвет и шрифт, а код как будто приклеен из другого макета. Хочется покрасить его в свой цвет, поставить логотип в центр, обвести рамкой. Дизайнерские генераторы предлагают еще скругленные модули, градиент и цветные «глаза» по углам.
Фигурных кодов в этой статье не будет. Речь про фирменный код, который читается с бумаги. Красить и обводить можно все вокруг матрицы, а саму сетку модулей трогать нельзя.
Что в QR-коде можно менять, а что нет
Содержимое задает матрицу: число модулей в ряду, их расположение, три больших квадрата-«глаза» по углам и пустое поле вокруг. Трогать это нельзя, потому что сдвинутый «глаз» или срезанное поле ломают чтение.
Оформление остается снаружи этой сетки. Менять можно цвет модулей и цвет фона, ставить в центр картинку, которая закрывает часть модулей и держится на избыточности кода, добавлять рамку и подпись вокруг. Все это проходит без вреда, если помнить одно свойство камеры.
Перед чтением сканер переводит кадр в черно-белый по порогу яркости. Все, что темнее порога, становится для него единицей, а все, что светлее, становится нулем. Отсюда и правила ниже, ведь после такого перевода код обязан остаться темным на светлом, с запасом.
Темное на светлом и порог контраста
Код должен быть темнее фона, а контраст между ними от 4 к 1. Контраст считается по формуле WCAG, той же, что для текста на сайтах. Генератор проверяет его сам. Мы прогнали типовые фирменные цвета через этот расчет, и на белом фоне вышло так:
- Черный 21 к 1, темно-синий #1a3d7c 10,5 к 1, зеленый #2e7d32 5,1 к 1 и красный #d32f2f 5,0 к 1 проходят.
- Серый #777777 дает 4,5 к 1 и проходит на грани, потому что на бумаге он светлеет и запаса почти не остается.
- Голубой #0288d1 дает 3,9 к 1 и режется. На экране «фирменный голубой» выглядит ярким, а камера видит его бледным.
- Оранжевый #f57c00 2,7 к 1 и желтый #fdd835 1,4 к 1 не проходят вовсе.
Красить фон безопаснее, чем сам код. Черный код на желтом фоне #ffe600 дает 16,6 к 1, темно-синий на светло-голубом #90caf9 дает 6,0 к 1. Фирменный цвет уходит в подложку, а код остается темным.
Та же формула WCAG, что у генератора. Порог 4 к 1 это нижняя граница. На бумаге краска светлеет, поэтому для тиража берите пару с запасом.
Генератор не пропустит пару с низким контрастом. Под выбором цветов появится ошибка «контраст кода с фоном слишком низкий, камера может не прочитать код. Сделайте код темнее». Для светлого кода на темном фоне есть отдельное правило «выберите цвет темнее фона». У белого кода на синем контраст те же 10,5 к 1, но светлый код на темном читают не все сканеры.
На печати эти числа сдвигаются. Краска на бумаге темнее экрана, CMYK делает яркие цвета тусклее, а на цветной заливке струйная краска растекается по краям модулей. Поэтому 4 к 1 это нижняя граница, а для тиража нужна пара с запасом. У темно-синего с его 10,5 к 1 запас остается и после печати, а серый с 4,5 к 1 такого запаса не дает.
Логотип в центре за счет коррекции ошибок
В QR-коде есть запас избыточности, уровень коррекции ошибок. На уровне L восстанавливается 7% площади, а на уровне H восстанавливается до 30%. Логотип в центре забирает долю этого запаса, потому что часть модулей закрыта картинкой, а данные восстанавливают остальные. Генератор включает уровень H сам, как только вы загружаете файл.
Картинка занимает четверть стороны кода, это 6,25% площади. Под ней подложка цвета фона с полем в 12% от размера картинки, чтобы модули не подходили к знаку вплотную. Вместе с полем подложка закрывает около 9,6% площади, втрое меньше того, что восстанавливает уровень H. Остальное остается на царапины и грязь печати.
С коррекцией H матрица становится плотнее. Ссылка из 20 знаков на уровне L занимает 25 модулей в ряду, а на уровне H занимает 29. Ссылка из 43 знаков с меткой UTM вырастает с 29 модулей до 37, и при стороне 3 см модуль ужимается с 1,03 до 0,81 мм. Код с логотипом мельче 3 см лучше не печатать. Почему так важен размер модуля, разобрано в статье насколько маленьким может быть QR-код.
В центр кладите квадратный или близкий к квадрату знак на белом либо прозрачном фоне, PNG или JPG до 256 КБ, от 16 до 4096 пикселей по стороне. Текст в четверти стороны не читается, фотография сливается с модулями, а тонкие линии теряются. Подойдет монограмма или плотная пиктограмма. Загрузить знак и собрать лист можно на странице QR-код с логотипом в центре.
Рамка, подпись и прозрачный фон
Рамка вокруг кода настраивается тремя числами: толщина от 0 до 2 мм (по умолчанию 0,2), скругление углов до 5 мм, отступ от кода до 10 см. Рядом стоит выбор «Где рамка» с чипами «вокруг кода» (по умолчанию), «код и подпись» и «без рамки». Тонкая линия фирменного цвета собирает код в один объект, а в режиме «код и подпись» обводит и подпись. Резать по этой линии не нужно. Для резки там же есть галочка «Метки реза».
Отступ рамки от кода на листе и есть тихая зона, то самое светлое поле, по которому камера находит границу матрицы. По умолчанию он 0,3 см, и ужимать его к нулю нельзя, потому что от линии вплотную к модулям код перестает читаться. Держите отступ не меньше 4 модулей. У кода 3 см из 29 модулей это 4 мм, поэтому для такого кода поднимите ползунок с 0,3 до 0,4 см.
В поштучных SVG и PNG поле в 4 модуля добавляется снаружи само. Нормы поля разобраны в статье поля и отступы QR-кода.
Подпись под кодом это оформление и призыв одновременно: «Меню», «Wi-Fi для гостей», «Оставить отзыв». Короткий текст объясняет, что случится после сканирования. Как задать подписи списком, разобрано в статье QR-код с подписью.
Прозрачный фон нужен, когда код ложится в макет листовки, упаковки или презентации. Флажок «Прозрачный фон» убирает заливку, контраст считается против белой бумаги, а вместо подложки под логотипом модули вычищаются из матрицы. Верстальщик кладет код на свой светлый фон, не подбирая оттенок заливки.
Что ломает сканирование и почему у нас этого нет
Скругленные и круглые модули ломают чтение сильнее прочего. Камера ищет границы квадратов, а при мелком модуле и неровной печати круглые точки сливаются в пятна, и матрица теряется. На экране такой код читается, а с наклейки 2 см он уже не берется. Остальные приемы отнимают запас так же:
- У градиента светлый конец проваливается ниже порога яркости, и часть модулей становится для камеры фоном.
- По трем угловым квадратам сканер находит код и его поворот, поэтому с цветными и фигурными «глазами» код перестает читаться.
- У картинки поверх модулей без коррекции H остается запас 7% уровня L, и его хватает только на мелкие царапины.
- Арт-коды от нейросети на экране читаются не всегда, а на бумаге при тусклом свете не читаются вовсе.
- Инверсию, то есть светлые модули на темном фоне, часть камер не распознает.
- Когда у кода нет тихой зоны и модули упираются в рамку или текст, сканер не находит границу.
Наш генератор рисует только квадратные модули одним цветом, не делает градиентов и не красит «глаза». Такой код не станет фигурным. Если код после чужого «дизайна» перестал сканироваться, порядок разбора в статье почему не сканируется QR-код.
Проверка перед тиражом
Сначала проверьте код на экране. Наведите лупу на код в превью. Она читает растр картинки в браузере и показывает содержимое. Если цветовая пара или логотип сломали код, это видно еще до печати. Бумагу лупа не проверяет.
Потом напечатайте один лист на финальной бумаге и на том принтере, который пойдет в тираж, и отсканируйте его двумя телефонами. Цветной код проверьте еще с 40 см и при тусклом свете, потому что на цветной паре запас кончается раньше. Код с логотипом проверяйте вплотную. Плотная матрица чувствительнее к фокусу.
Цвет, фон, рамка и логотип задаются один раз на весь список, до 1500 кодов. Подпись у каждого кода своя. Она берется из его строки списка. Оформление на всех кодах одинаковое, поэтому проверять достаточно один. Как оформляют коды под конкретные носители, показано в базе знаний.
FAQ
Можно ли сделать цветной QR-код?
Да, если код темнее фона и контраст от 4 к 1. Если фирменный цвет по контрасту не проходит, не подгоняйте оттенок. Перенесите цвет в рамку и подпись, а сам код оставьте темным.
Как вставить картинку внутрь куар кода?
Загрузите файл в поле логотипа на шаге «Вид и размер», и знак встанет в центр всех кодов списка сразу. Размер знака и поле подложки вокруг него не настраиваются.
Куда девать логотип, если он не влезает в четверть стороны?
Поставьте его рядом с кодом, в рамку или под подпись, вместо центра. Матрица тогда остается целой, коррекция не растет до H, и код можно печатать мельче 3 см.
Может ли QR-код быть белым на красном фоне?
Форма не примет белый код на красном фоне. Она покажет ошибку «выберите цвет темнее фона, иначе камеры не распознают код», и до проверки контраста дело не дойдет. Переверните пару: черный код на красном #d32f2f дает 4,2 к 1 и проходит на грани, а на чистом красном #ff0000 дает 5,3 к 1.
Следующий шаг
Впишите свой фирменный цвет в левый квадрат блока «Цвет кода и фона» в тонкой настройке. Если форма не показала ошибку контраста, а превью перекрасилось, ваши цвета кода и фона проходят порог 4 к 1.
Подберите цвет и рамку в «Тонкой настройке». Превью пересчитывается сразу, а лупа проверит пару цветов до печати.
Соберите свой лист с QR-кодами
Вставьте список ссылок или загрузите файл, а мы разложим коды с подписями по листам A4 и отдадим PDF, SVG или PNG.
Открыть генератор