Skip to content

DmitriiRus37/qr-code-builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Реализация кодирования информации в QR-код на основе: ютуб туториал хабр

VERSION 1: уровень коррекции L(Low): 41 цифра / 25 симовлов латинского алфавита / 17 бинарных данных уровень коррекции M(Medium): 34 цифра / 20 симовлов латинского алфавита / 14 бинарных данных уровень коррекции Q(Quartile): 27 цифра / 16 симовлов латинского алфавита / 11 бинарных данных уровень коррекции H(High): 17 цифра / 10 симовлов латинского алфавита / 7 бинарных данных

закодировать число 1234:

  1. число разбивается на трехзначные числа: "123" и "4"
  2. каждое такое число переводится в двоичный вид (10 бит). Для последнего числа, которое может быть не трехзначным, может быть отведено 7 или 4 бита.
  3. далее для этой последовательности в начале надо указать хэдэр для декодера (для числовых значений "0001")
  4. сразу после хэдера надо указать число цифр в кодированном числе (для 1234 -> 4) в двоичном виде (для числовых значений отводится 10 бит)
  5. добавить терминатор в конец (4 нуля или меньше).
  6. дополнить последовательность до целого числа байт, добавляя в конец нули.
  7. далее перевести последовательность в десятичный вид
  8. найти генерирующий многочлен по таблице
  9. найти корректирующие байты
  10. создать битовую последовательность
  11. заполнить поле QR-кода

закодировать "Хаб" в двоичном виде:

  1. строка переводится в битовую строку
  2. далее для этой последовательности в начале надо указать хэдэр для декодера (для байтовых значений "0100")
  3. сразу после хэдера надо указать число цифр в кодированном числе (для Хаб -> 6 байт) в двоичном виде (для битовых значений отводится 8 бит)
  4. добавить терминатор в конец (4 нуля или меньше).
  5. дополнить последовательность до целого числа байт, добавляя в конец нули.
  6. далее перевести последовательность в десятичный вид
  7. найти генерирующий многочлен по таблице
  8. найти корректирующие байты
  9. создать битовую последовательность
  10. заполнить поле QR-кода

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages