Гайд: как сделать красивый и читаемый QR код
Здесь собрано всё, что нужно знать, чтобы выпустить QR код в продакшен - от типа данных до коррекции ошибок и того, почему ваш цветной QR вдруг перестал сканироваться. Если хотите сразу попробовать - откройте генератор 4pna.
Что такое QR код вообще
QR (Quick Response) - двумерный штрих-код, описанный стандартом ISO/IEC 18004. Он хранит данные в виде сетки тёмных и светлых модулей. По углам есть три обязательных квадрата (finder pattern), по которым сканер находит код и понимает его поворот. Внутри - данные плюс байты для восстановления ошибок.
Сколько данных влезает
Зависит от двух параметров: версии (от 1 до 40, размер от 21×21 до 177×177 модулей) и уровня коррекции ошибок (ECC):
- L - до 7% повреждений, лимит
2953байт - M - до 15% повреждений, лимит
2331байт - Q - до 25% повреждений, лимит
1663байт - H - до 30% повреждений, лимит
1273байт
Если планируете логотип в центре, силуэт или цвет из картинки - ставьте минимум Q, лучше H. Это даёт запас прочности.
Какой тип данных выбрать
4pna поддерживает все распространённые форматы:
- URL - открывает сайт. Если префикс
https://не указан, добавляется автоматически. - tel - открывает звонок:
tel:+79991234567. - mailto - открывает email:
mailto:me@4pna.ru. - SMSTO - открывает SMS с готовым текстом: см. SMS QR.
- WIFI - подключает к Wi-Fi: см. Wi-Fi QR.
- VCARD - добавляет контакт: см. vCard QR.
- geo - открывает точку на карте: см. Гео QR.
- LZ-сжатие - укорачивает длинный текст префиксом
LZ:. Нужно декодировать на принимающей стороне. - base64 - бинарка в QR префиксом
B64:.
Размер кода для печати
Минимальный безопасный размер - примерно 1.5 см на стороне для скана с 20 см. Для рекламы на улице берите 10 см и больше. Формула простая: размер сканирования = 10× размер модуля.
Вокруг кода обязательно нужен quiet zone - светлое поле не менее 4 модулей по периметру. Без него многие сканеры не видят границу кода. В 4pna это поле задаётся параметром "Поле" в настройках.
Можно ли красить QR в любой цвет
Да, но с условиями:
- Контраст между тёмными и светлыми модулями должен быть выше 60% по luma. Иначе сканер запутается.
- Светлые модули должны быть реально светлыми (luma > 0.78), тёмные - тёмными (luma < 0.45).
- Три finder pattern в углах должны быть монохромными и одного цвета.
- Инверсия (светлые модули на тёмном фоне) формально работает, но некоторые старые сканеры могут не понять.
В QR из картинки у нас алгоритм автоматически подгоняет цвета. Поэтому даже KFC-стиль остаётся сканируемым - попробуйте.
Логотип в центре - сломает ли он QR
Нет, если соблюдать пропорции. Логотип занимает место модулей, но коррекция ошибок их восстанавливает. Правила:
- Размер логотипа - не больше 22% от стороны кода при коррекции H.
- Не наезжайте на finder pattern в углах - три квадрата святое.
- Под логотипом подложите однотонный квадрат фона - так сканер не путается в полупрозрачности.
Силуэт - как не сломать читаемость
Силуэт обрезает QR по форме. Это значит, часть модулей теряется. Решение - коррекция H и сохранение центра кода нетронутым. В арт-генераторе 4pna мы автоматически держим коррекцию H для всех силуэтных кодов, а finder pattern всегда рисуем поверх маски - они никогда не обрезаются.
Хотите тонкий силуэт (тонкая корона, узкое перо)? Тогда увеличивайте версию QR - чем больше модулей, тем устойчивее код к потере деталей.
Передача файлов через QR
В 4pna transfer файл режется на base64-куски и упаковывается в поток QR кадров. Один телефон показывает кадры по очереди, второй ловит камерой. Каждый кадр защищён CRC32, итоговый файл проверяется SHA-256.
Важно: номер кадра показывается отдельно под QR кодом, в зоне padding-а. Он не накладывается на модули - в отличие от старых версий с overlay-бейджем, которые часто ломали скан.
Сколько силуэтов у 4pna
На момент написания - 50+ форм в шести группах: базовые геометрические (квадрат, ромб, шестиугольник), символы (сердце, звезда, корона), природа (лист, цветок), животные (кот, собака, рыба), тело (зуб, мозг, ладонь), предметы (машина, ракета, ноты). Полный список - в каталоге силуэтов.
Можно ли загрузить свою картинку как силуэт
Да, на странице арт QR есть поле "Своя маска (PNG/SVG)". Картинка бинаризуется по порогу (можно крутить ползунок) и используется как маска для QR. Лучше всего работают чёткие контрастные изображения - логотипы, силуэты, иконки.
Арт-кодинг - что это
В режиме арт-кодинга чёрные модули заменяются буквами или символами из вашей строки. Получается QR-плакат: код одновременно сканируется и читается как текст. Подходит для брендинга, обложек, открыток. Требует коррекции H, иначе глифы ломают распознавание.
Где 4pna не подойдёт
Если нужны динамические QR (короткий код, который ведёт на редирект и считает клики) - это серверная задача. 4pna генерирует только статические коды, всё считается в браузере. Зато ваши данные никуда не утекают.
Готовы попробовать
Откройте главный генератор и соберите свой первый QR за минуту. Или начните сразу с фишек: