клас QRCode – об’єкт QRCode

Об’єкт qrcode – це attrtuple, що повертається функцією Image.find_qrcodes(). Кожен екземпляр описує розпізнаний QR-код: його обмежувальний прямокутник, розкодоване корисне навантаження, метадані декодера (версія, рівень ECC, маска, тип даних, ECI), чотири виявлені кути та зручні булеві прапорці, що визначають кодування корисного навантаження.

Поля доступні за назвою атрибута (qrcode.payload) або за індексом (qrcode[0]). Об’єкт не має публічного конструктора.

class image.qrcode

Для створення цього об’єкта викликайте Image.find_qrcodes().

Обмежувальний прямокутник та кути

x

Координата X лівого верхнього кута обмежувального прямокутника, в пікселях. Ціле число. Індекс [0].

y

Координата Y лівого верхнього кута обмежувального прямокутника, в пікселях. Ціле число. Індекс [1].

w

Ширина обмежувального прямокутника, в пікселях. Ціле число. Індекс [2].

h

Висота обмежувального прямокутника, в пікселях. Ціле число. Індекс [3].

corners

4-кортеж цілочисельних кортежів (x, y) для чотирьох виявлених кутів QR-коду, відсортованих за годинниковою стрілкою починаючи з лівого верхнього кута. Індекс [10].

rect

4-кортеж (x, y, w, h) обмежувального прямокутника. Придатний для безпосередньої передачі методам малювання/обрізання, таким як Image.draw_rectangle() або Image.crop(). Індекс [15].

Розкодоване корисне навантаження

payload

Рядок розкодованого корисного навантаження. Індекс [4].

Метадані декодера

version

Версія QR-коду, від 1 до 40. Вищі версії кодують більше даних і мають більші модулі. Ціле число. Індекс [5].

ecc_level

Рівень корекції помилок, від 0 до 3 (відповідає L / M / Q / H). Вищі значення резервують більше кодових слів для корекції помилок. Ціле число. Індекс [6].

mask

Шаблон маски, від 0 до 7. Використовується кодувальником QR-коду для вибору шаблону модулів, що мінімізує плутанину декодера. Ціле число. Індекс [7].

data_type

Кодування корисного навантаження, як його повідомив декодер. Одне з таких значень бітової маски: 1 – числове, 2 – буквено-цифрове, 4 – двійкове, 8 – Kanji. Дивіться атрибути окремих прапорців нижче для зручнішого вигляду. Ціле число. Індекс [8].

eci

Значення розширеної інтерпретації каналу (ECI). Кодує кодування тексту, що використовується для байтів у корисному навантаженні (наприклад, UTF-8 замість ISO-8859-1). Ціле число. Індекс [9].

Прапорці кодування

is_numeric

True, якщо data_type вказує на числове корисне навантаження. Індекс [11].

is_alphanumeric

True, якщо data_type вказує на буквено-цифрове корисне навантаження. Індекс [12].

is_binary

True, якщо data_type вказує на двійкове корисне навантаження. Перевірте eci, щоб визначити кодування тексту, коли це True. Індекс [13].

is_kanji

True, якщо data_type вказує на корисне навантаження Kanji. Символи Kanji займають 10 біт на символ, і MicroPython не розбирає це кодування – корисне навантаження слід розглядати як масив байтів. Індекс [14].