Насколько маленьким может быть QR-код
Код надо втиснуть на бирку или пломбу. Где проходит физический предел размера, из чего он складывается и как ужать матрицу без потери чтения.
Ювелирная бирка, пломба на счетчике, торец коробки с деталями, ценник на полке, свободный уголок визитки: место под квадрат кода тут меряют миллиметрами. Вопрос всегда один. До какого размера можно ужать код, чтобы телефон его еще читал.
Предел считается, а не угадывается. Сторона кода делится на число квадратиков-модулей внутри, и дальше все решает один этот квадратик: пролезет ли он через печать и попадет ли в фокус камеры.
Ниже арифметика модулей с числами, снятыми на нашем генераторе, пороги принтера и камеры, тихая зона вокруг матрицы и приемы уменьшить код без потери чтения.
Из чего складывается размер: модули
QR-код это сетка темных и светлых квадратиков. Каждый называется модулем, и число модулей в ряду задается длиной содержимого. Размер на бумаге тут ни при чем: код 1 см и код 10 см с одной и той же ссылкой внутри состоят из одинакового числа модулей, просто у первого они мельче в десять раз.
Все значения ниже посчитаны при уровне коррекции L, он стоит по умолчанию. Короткий адрес site.ru/a7k2 в 12 знаков укладывается в матрицу 21 на 21 модуль, это самая маленькая версия кода. Тот же адрес с приставкой https:// занимает 20 знаков и дает уже 25 модулей. Ссылка на страницу каталога из 46 знаков дает 29, а она же с двумя метками UTM (60 знаков) разгоняет матрицу до 33.
Границы переходов стоит держать в голове: до 16 знаков код живет на 21 модуле, с 17 до 31 знака идет 25 модулей, с 32 до 52 знаков 29, дальше 33. Один лишний знак в адресе стоит целой ступени.
Физический размер модуля получается делением: сторона кода на число модулей. Снятые значения:
- 21 модуль: 0,48 мм при стороне 1 см, 0,71 мм при 1,5 см, 0,95 мм при 2 см.
- 25 модулей: 0,40 мм при 1 см, 0,60 мм при 1,5 см, 0,80 мм при 2 см.
- 29 модулей: 0,34 мм при 1 см, 0,52 мм при 1,5 см, 0,69 мм при 2 см.
- 33 модуля: 0,30 мм при 1 см, 0,45 мм при 1,5 см, 0,61 мм при 2 см.
Дальше вся статья про одно число из этой таблицы: сколько миллиметров осталось у модуля. Оно и решает, доживет ли код до сканирования.
Порог принтера
Печать кладет изображение точками. Чтобы модуль сохранил форму квадрата, в него должно уместиться хотя бы четыре точки по стороне, иначе на бумаге выходит размытое пятно. Размер точки берется из разрешения: у лазерного принтера 600 dpi это 0,042 мм, у офисной печати 300 dpi 0,085 мм, у термопринтера этикеток 203 dpi 0,125 мм.
Умножаем на четыре и получаем нижнюю границу модуля для каждой техники: 0,17 мм у лазера 600 dpi, 0,34 мм у 300 dpi, 0,50 мм у термопринтера. Это идеальные условия. Струйная печать растекается по волокнам бумаги и съедает часть запаса, подсевший картридж вместо черного дает серое, мелованный глянец добавляет собственный разброс.
Практический порог для офисной техники: модуль от 0,4 мм. Надежный, при котором не приходится думать о бумаге и картридже: от 0,5 мм. Приложите пороги к таблице выше. Код 1 см с коротким адресом внутри (21 или 25 модулей, модуль 0,48 и 0,40 мм) на лазернике читается. Тот же сантиметр с длинной ссылкой (33 модуля, модуль 0,30 мм) превращается в лотерею на каждом оттиске.
Термопринтер этикеток строже всех. Из порога 0,5 мм следует, что код на 25 модулях не имеет права быть меньше 1,3 см, а на 33 модулях меньше 1,7 см. Мелкая этикетка с длинным адресом внутри на такой печати не получится вовсе.
Порог камеры
Со стороны телефона первым сдается фокус, разрешение камеры тут вторично. Ближняя граница резкости у большинства камер лежит на 5–10 см: ближе объектив уже не наводится, и код превращается в мутное пятно. Мелкому коду нужна как раз эта дистанция, оттого он и упирается в границу резкости.
Дальше работает правило про десятую часть дистанции сканирования, разобранное в статье размер QR-кода для печати. Код 1 см по нему читается с 10 см, то есть телефон придется поднести почти вплотную к бирке. Для пломбы и ценника это нормально, для меню на столе уже нет.
Запас съедают мелочи. Бюджетная камера трехлетней давности наводится дольше и в полумраке промахивается. Наклейка под прозрачной пленкой дает блик, который закрывает часть матрицы. Рука на такой дистанции дрожит и размазывает границы модулей. Крупный код все это переживает, у мелкого запаса нет.
Тихая зона: код занимает больше, чем кажется
Вокруг матрицы обязана лежать пустая светлая полоса шириной в четыре модуля. По ней сканер отделяет код от фона, и ужать ее ради экономии места нельзя: без поля не читается даже крупный код. Нормы разобраны в статье поля и отступы QR-кода.
В нашем генераторе заданный размер относится к самой матрице, а поле добавляется снаружи. Считаем габарит: код 1 см на 21 модуле займет на бумаге 13,8 мм по стороне, на 25 модулях 13,2 мм. Под код «один сантиметр» надо расчистить почти полтора.
На бирке или пломбе эта разница решающая. Отмеряйте место по внешней границе поля, иначе рамка, подпись или линия реза подойдут к матрице вплотную и сломают чтение уже после того, как тираж напечатан.
Как уменьшить код, не теряя чтения
Главный рычаг один: длина содержимого. Каждая ступень версии это плюс четыре модуля в ряду, и переход с 25 модулей на 29 отнимает у модуля 0,06 мм при стороне 1 см. Короткий адрес на своем домене вида site.ru/a7k2 живет в 21 модуле и оставляет модулю 0,48 мм, почти вдвое больше воздуха, чем у ссылки с метками.
- Свой короткий адрес вместо длинного пути с рубриками и датами.
- Метки UTM в мелкий код не зашивать: пара меток добавила в нашем прогоне восемь модулей.
- Уровень коррекции L: он стоит по умолчанию и дает самую компактную матрицу.
- Логотип в центре выключить. Он поднимает коррекцию до H, и ссылка из 20 знаков вырастает с 25 модулей до 29, а модуль при стороне 1 см падает с 0,40 до 0,34 мм. Логотип уместен на кодах от 3 см, для них есть отдельный генератор.
- Темный код на белом фоне, без инверсии и цветной подложки: контраст возвращает камере запас, который отнял размер.
- Матовая бумага и лазерная печать вместо струйной на глянце.
Что не помогает. Сжать готовый код в макете непропорционально: модули поедут, и матрица умрет. Сделать линии потоньше: в нашем SVG все темные модули рисуются одним контуром, менять их толщину нечем, и это правильно. Понадеяться на коррекцию ошибок: она вытягивает грязь и царапины, но растекшуюся печать не чинит.
Содержимое сложнее ссылки растит матрицу быстрее всего. Карточка vCard с именем, телефоном, почтой и организацией дает 45–49 модулей в зависимости от длины полей, и на визитке такой код меньше 2 см не ставят. Числа и место на карточке разобраны в статье QR-код на визитке.
Тест-лист перед тиражом
Расчет дает ориентир, последнее слово за оттиском. Ползунок размера в форме начинается с 1 см, поэтому проверка выглядит так: четыре генерации одного и того же адреса, по одному размеру на лист, 1 см, 1,2 см, 1,5 см и 2 см.
Печатайте на той бумаге и том принтере, которые пойдут в тираж: офисная бумага и типографский мелованный картон ведут себя по-разному. Сканируйте двумя телефонами, вплотную и с 15–20 см, при рабочем освещении. Самый мелкий код, который читается мгновенно и с первого раза, и есть предел для этого носителя.
Про лупу в форме честно: она читает превью на экране, растр берется с картинки в браузере. Так проверяется содержимое, то есть внутри действительно тот адрес, который вы вставили. Физическую читаемость мелкого оттиска подтверждает только распечатанный лист.
Если код не читается ни в одном размере, дело уже не в размере. Причины и порядок проверки собраны в статье почему не сканируется QR-код, остальные материалы про печать лежат в базе знаний.
FAQ
Какой самый маленький QR-код можно напечатать?
На лазерном принтере предел около 1 см, и только с коротким адресом внутри: 21 и 25 модулей дают модуль 0,48 и 0,40 мм. Надежный размер для тиража 1,5 см. На термопринтере этикеток код мельче 1,3 см ставить не стоит.
Можно ли сделать QR-код размером 1 см?
Да, при коротком адресе и лазерной печати: такой код читается вплотную, примерно с 10 см. С длинной ссылкой (33 модуля, модуль 0,30 мм) или с логотипом в центре тот же сантиметр перестает работать.
Какой минимальный размер модуля QR-кода?
0,4 мм для офисной печати 300 dpi, 0,5 мм для термопринтера этикеток и струйной печати, 0,25 мм для лазера 600 dpi на хорошей бумаге. Ниже этой границы модуль перестает быть квадратом и сливается с соседями.
Почему маленький QR-код не сканируется?
Причин четыре: модуль ушел ниже порога принтера, камера не наводит фокус вплотную, срезана тихая зона, содержимое слишком длинное для такого размера. Развернутый разбор в статье почему не сканируется QR-код.
Следующий шаг
Возьмите адрес, который пойдет в код, укоротите его до предела и посчитайте модуль по таблице. Затем сгенерируйте четыре листа размерами 1, 1,2, 1,5 и 2 см, распечатайте на финальной бумаге и отсканируйте вплотную. Оставьте тот размер, который прочитался без задержки, и запишите его как стандарт для этого носителя.
Соберите пробные листы в генераторе QR-кодов: ползунок размера от 1 см, превью листа целиком, лупа для проверки содержимого. Печатный тест за вами.
Соберите свой лист с QR-кодами
Вставьте список ссылок или загрузите файл: разложим коды по листам A4 с подписями и отдадим PDF, SVG или PNG.
Открыть генератор