Как работают QR-коды

QR-код хранит текст в квадратной сетке тёмных и светлых модулей, которую камера считывает под любым углом. Встроенная коррекция ошибок выдерживает грязь, повреждения и даже логотип в центре.

Абстрактная иллюстрация камеры телефона, сканирующей напечатанный квадратный код на плакате
Абстрактная иллюстрация камеры телефона, сканирующей напечатанный квадратный код на плакате

Родом с автомобильного завода

QR-код (Quick Response) изобрели в 1994 году Масахиро Хара и его команда в Denso Wave, компании группы Toyota, чтобы отслеживать автозапчасти быстрее, чем позволяли линейные штрихкоды. Патент принадлежит Denso Wave, но компания решила не применять его, поэтому формат может свободно использовать каждый. Он стал международным стандартом ISO/IEC 18004 и распространился по миру, когда камеры телефонов научились его читать.

Устройство кода

Три больших квадрата в углах это поисковые узоры, по которым сканер определяет положение и поворот кода. Пунктирные синхронизирующие линии между ними задают сетку, а начиная с версии 2 небольшие выравнивающие узоры компенсируют изогнутые или наклонные поверхности. Служебная информация о формате рядом с поисковыми узорами хранит уровень коррекции и маску. Остальная сетка содержит кодовые слова данных и коррекции.

Версии, ёмкость и маски

Существует 40 версий: от 21 x 21 модуля (версия 1) до 177 x 177 (версия 40), каждая следующая больше на 4 модуля. Версия 40 на уровне L вмещает 2953 байта. В конце накладывается одна из восьми масок, чтобы избежать больших пятен и узоров, похожих на поисковые; кодировщик выбирает маску с наименьшим штрафом.

Коррекция ошибок и советы по считыванию

Коррекция Рида-Соломона добавляет избыточность, чтобы повреждённый код можно было восстановить: уровень L восстанавливает около 7% кодовых слов, M около 15%, Q около 25% и H около 30%. Поэтому небольшой логотип в центре работает на уровне H. Для надёжного считывания оставьте свободную зону в четыре модуля, используйте тёмный код на светлом фоне с сильным контрастом, печатайте шириной не меньше 2 см и проверяйте несколькими телефонами.

Часто задаваемые вопросы

Истекает ли срок действия QR-кодов?

Статический QR-код, как те, что создаются здесь, никогда не истекает: содержимое хранится в самом коде. Перестают работать только динамические коды платных сервисов, ведущие на ссылку-переадресацию, когда подписка отменена.

Сколько вмещает QR-код?

До 2953 байт в байтовом режиме на уровне L, это около 2900 латинских символов; кириллица занимает 2 байта на символ, поэтому её помещается меньше. Чем короче содержимое, тем меньше и легче считывается код.

Можно ли поместить логотип в QR-код?

Да, если уровень коррекции достаточно высокий. Логотип, закрывающий около 5% площади в центре, безопасен на уровне H, который восстанавливает около 30% кодовых слов. Никогда не закрывайте три поисковых узора.

Готовы попробовать?

Откройте PictorX в своем браузере — установка не требуется, для запуска не требуется кредитная карта.

Открыть генератор QR-кодов