Що таке QR-код і як він працює?

QR-код — це двовимірний штрихкод, який зберігає текст (зазвичай посилання) у вигляді сітки чорних і білих квадратів, зчитуваної будь-якою камерою телефона без застосунку.

6 хв читання · Оновлено

Назва скорочена від Quick Response code — «код швидкого відгуку». Його винайшла у 1994 році компанія Denso Wave, підрозділ Toyota, щоб відстежувати автозапчастини швидше, ніж це дозволяв смугастий штрихкод — звідси й наголос на швидкості. Звичайний штрихкод зберігає дані в одному напрямку, тож місце в ньому закінчується після десятка символів. QR-код зберігає дані у двох напрямках одночасно — саме тому в нього вміщується повне посилання, контактна картка чи пароль Wi-Fi.

З чого насправді складається візерунок

Кожен QR-код — це сітка квадратиків, які називають модулями. Кілька з них є не даними, а сталими орієнтирами:

  • Пошукові патерни — три великі квадрати по кутах. Сканер шукає їх першими: вони показують, де саме код і як він повернутий. Саме тому QR-код читається догори дриґом.
  • Вирівнювальні патерни — менші квадрати, що дозволяють сканеру скоригувати викривлену чи нахилену поверхню: пляшку або бейдж, який тримають під кутом.
  • Синхронізаційні лінії — пунктир між пошуковими патернами, який задає розмір модуля, щоб сканер знав, наскільки великий один квадратик.
  • Дані про формат і версію — вузька смужка, що кодує використаний рівень корекції помилок і розмір сітки.

Усе інше — це ваші дані плюс їхня корекція помилок. Коли ви змінюєте форми й кольори очей у генераторі, ви переоформлюєте саме ці орієнтири — сканеру потрібні лише контраст і пропорції.

Версія: чому більше тексту робить код щільнішим

QR-коди мають 40 версій. Версія 1 — це сітка 21×21; кожен наступний крок додає чотири модулі на сторону, аж до 177×177 у версії 40. Кодувальник обирає найменшу версію, у яку вміщаються ваші дані, тож коротке посилання дає великомодульний і поблажливий код, а довге — дрібносітчастий, якому потрібні краща камера й більший друк.

Це найкорисніше, що варто знати про QR-коди: коротший вміст означає більші квадратики, а більші квадратики читаються з більшої відстані й переживають гірший друк. Якщо код виглядає як щільний шум — спершу скоротіть посилання, і лише потім чіпайте решту.

Корекція помилок: чому пошкоджений код усе одно працює

QR-коди використовують корекцію помилок Ріда — Соломона, ту саму сім'ю математики, що змушує подряпаний компакт-диск грати далі. Надлишкові дані вплітаються в сітку, тож сканер може відновити модулі, які не зміг прочитати. Ви обираєте, скільки надлишковості витратити:

РівеньВідновлює доКоли брати
L — низький~7%Лише екран, довгий вміст, чисті умови
M — середній~15%Розумний стандарт для більшості друку
Q — четвертинний~25%Невеликий логотип або друк, що може потертися
H — високий~30%Великий логотип, художні коди, упаковка

Гортайте таблицю, щоб побачити всі колонки.

Надлишковість не безкоштовна: підвищення рівня робить код щільнішим за того самого вмісту. Саме цей обмін — більше поблажливості за дрібніші модулі — і дозволяє взагалі додавати логотип.

Вільне поле — це частина коду

QR-коду потрібні порожні поля щонайменше чотири модулі з кожного боку. Без них сканер не розуміє, де закінчується сітка, і код не працює, хоча сам візерунок бездоганний. Обрізання впритул до чорного краю — одна з найчастіших причин, чому надрукований код перестає читатися.

Статичні проти динамічних кодів

Статичний код містить сам ваш вміст. Він працює вічно, офлайн, без посередників — і його неможливо змінити після друку. Динамічний код містить коротке посилання-перенаправлення, що належить сервісу: пункт призначення можна редагувати згодом, а сканування — рахувати, але код перестане працювати, якщо сервіс зникне або почне брати гроші.

Усі коди тут статичні за задумом. Якщо вам потрібна змінність, наведіть код на сторінку, яку контролюєте ви — власне коротке посилання — щоб перенаправлення належало вам, а не постачальнику.

Що може вміщати QR-код

QR-код — це просто текст. Змусити телефон запропонувати підключення до мережі чи збереження контакту здатний формат цього тексту, що відповідає конвенціям, які розпізнають сканери: рядок WIFI: для мереж, BEGIN:VCARD для контактів, geo: для координат. Генератор пише їх за вас — дивіться гайди про коди Wi-Fi та контактні картки.

Чи є «QR Code» торговою маркою?

Так — це зареєстрована торгова марка Denso Wave. Сама специфікація відкрита (ISO/IEC 18004), і Denso Wave ніколи не брала грошей за її використання — саме тому формат усюди. Ви можете вільно створювати, друкувати й продавати товари з QR-кодами; єдине, чого не варто робити, — вдавати, ніби ви і є Denso Wave.