• Текст Визитка Ссылка E-mail GPS SMS
  • Вход | Регистрация
  • Основы QR-Code или как написать свой генератор QR-кода

    Никакой официальной документации еще нет, есть только один pdf файл со стандартами, его можно найти в интернете. Стандарт называется ISO/IEC18004 и он описывает версии в данном случае понятие "версия" подразумевает размер символа (квадрата) QR-кода.

    Всего существует 40 версий. Первая имеет размер 21x21 точек, каждая следующая на 4 больше.

    Существует 4 уровня коррекции ошибок:

    Качество коррекции ошибок QR Code
    Уровень L ~7%
    Уровень M ~15%
    Уровень Q ~25%
    Уровень H ~30%

    Уровень L отлично подойдет для веб QR-кодов, которые не могут повредиться.
    Уровень M оптимальный вариант для обычного использования, печати на визитках, постерах, плакатах. Более высокие уровни подойдут для наклеек или упаковок, у которых вероятность повредиться более высокая.

    Теперь, что касается заполнения данных. На каждом QR-коде есть служебная информация, она размещается в любом случае, остальное пространство заполняют блоки разбитые по 8 бит.

    Рис. 1. Служебная информация

    Рис. 1. Служебная информация

    Рис. 2. Заполнение данными

    Рис. 2. Заполнение данными

    Расположение блоков с данными может варьироваться друг относительно друга, на это в основном влияют смещения от "препятствия" таких как alignment блоки. Количество alignment элементов варьируется от версии, равно как и их местоположение.

    Чтобы распределить точки равномерно по полю, используются маски. Существует восемь стандартных масок:

    Mask Pattern Reference Condition
    000 ( i + j ) mod 2 = 0
    001 i mod 2 = 0
    010 j mod 3 = 0
    011 ( i + j ) mod 3 = 0
    100 ((i duv 2) + (j div 3)) mod 2 = 0
    101 (i j) mod 2 + (i j) mod 3 = 0
    110 ((i j) mod 2 + (i j) mod 3) mod 2 = 0
    111 ((i j) mod 3 + (i + j) mod 3) mod 2 = 0
    Читайте также: