Pull to refresh

QR-Статья 2:«Символьная структура QR»

Lumber room
Статья 2 — «Символьная структура»

В прошлой статье «Базовые характеристики QR» я рассказал об основных параметрах и возможностях кода QR.В данной статье будет более подробно рассказано, какие области за что отвечают, и что это за квадратики по углам, и почему рисунок вообще такой.Данная статья будет основой для 3-ей посвященной принципам кодирования информации с помощью QR кода, в которой я приведу небольшой пример на С#.

Итак, приступим.Код QR состоит из квадратных модулей, которые логически объединены в массив, код должен содержать регион кодирования(та часть в которую записывается информация), функциональные шаблоны, именованный указатель, сепаратор, временные шаблоны, выравнивающие шаблоны.Функциональные шаблоны не участвуют в кодировании информации.Символ должен быть окружен со всех сторон отступом, который называется «тихая зона».
(Примечание:слово «pattern» я употребляю в значении шаблон, т.к русскоязычной информации нет, то не всегда легко подобрать термин, который бы содержал суть.В программировании есть тенденция употреблять слово «паттерн», что является англицизмом и нехорошо для «великого и могучего»).

Шаблон — это часть кода, которая всегда присутствует в нем в одном и том же виде.В зависимости от используемой версии и типа кода, количество шаблонов может изменяться.

Приведем далее иллюстрации:
image

Ключевыми зонами, являются месторасположения шаблона поиска, они выглядят в виде концентрических, чередующихся по цвету, квадратов.Размером 7х7 модулей,5х5 модулей,3х3 модуля.Соотношение между ними 1:1:3:1:1
image
  • Шаблоны поиска специально отделены сепаратором, чтобы не было наложения другой информации и шаблон четко идентифицировался.
  • Временные шаблоны, горизонтальные и вертикальные соответственно состоят из одного модуля шириной в строку или в столбец в виде череды черно-белых модулей, при чем шаблон начинается и заканчивается с черного модуля.Временной шаблон позволяет определить плотность символов в конкретном коде и используемую версию.Горизонтальный проходит между сепараторами верхних шаблонов поиска по 6 строке, а вертикальный между сепараторами по левой стороне по 6-му столбцу.
    В MicroQR коде, горизонтальный временной шаблон проходит по 0-му столбу и 0-й строке соответсвенно, пример на рисунке:
    image
  • Выравнивающие шаблоны представлены в версии QR кода 2 и выше.Представлены в виде концентрических, чередующихся по цвету, квадратах.Размером 5х5 модулей,3х3 модуля.Должны располагаются симметрично по обе стороны от диагонали, проходящей через верхний левый угол к правому нижнему, равномерно между вертикальным временным шаблоном и противоположной стороной.В дополнении к документации приводится рекомендуемое расположение данных частей и количество в зависимости от версии.
  • Регион кодирования, содержит зашифрованную информацию и кодовые слова для ее восстановления
  • «Тихая зона» отделяет код от каких либо обозначений с 4-х сторон, представляет собой белую сплошную полосу.

image
image
Вот матричный способ разбиения картинки штрих кода наглядно, блоки необязательно должны быть квадратными, в версиях более высокого уровня имеют еще более причудливую форму и их плотность соответственно увеличивается.Напомню, что количество версий кода QR равняется 40.

Источники:
Information technology — Automatic identification and data capture techniques — Bar code symbology — QR Code
Information technology — Automatic identification and data capture techniques — QR Code 2005 bar code symbology specification
Information technology — Automatic identification and data capture techniques — Bar code print quality test specification — Two-dimensional symbols
Tags:
Hubs:
Total votes 22: ↑19 and ↓3 +16
Views 2K
Comments Comments 3