class QRCode -- QRCode 物件¶
qrcode 物件是由 Image.find_qrcodes() 回傳的 attrtuple。每個實例描述一個已解碼的 QR-code:其邊界框、已解碼的酬載、解碼器中繼資料(版本、ECC 等級、遮罩、資料類型、ECI)、四個偵測到的角點,以及用來辨識酬載編碼方式的便利布林旗標。
欄位可透過屬性名稱(qrcode.payload)或索引(qrcode[0])存取。此物件沒有公開的建構子。
- class image.qrcode¶
請呼叫
Image.find_qrcodes()來建立此物件。邊界框與角點¶
- x¶
邊界框左上角 x 座標,單位為像素。整數。索引
[0]。
- y¶
邊界框左上角 y 座標,單位為像素。整數。索引
[1]。
- w¶
邊界框寬度,單位為像素。整數。索引
[2]。
- h¶
邊界框高度,單位為像素。整數。索引
[3]。
- corners¶
QR code 四個偵測到的角點的
(x, y)整數元組所構成的 4 元組,從左上角開始順時針排序。索引[10]。
- rect¶
邊界框的
(x, y, w, h)4 元組。適合直接傳遞給繪製/裁切方法,例如Image.draw_rectangle()或Image.crop()。索引[15]。
已解碼的酬載¶
- payload¶
已解碼的酬載字串。索引
[4]。
解碼器中繼資料¶
- version¶
QR-code 版本,1 -- 40。較高的版本可編碼更多資料且模組較大。整數。索引
[5]。
- ecc_level¶
錯誤更正等級,0 -- 3(對應 L / M / Q / H)。數值越高,保留給錯誤更正的碼字越多。整數。索引
[6]。
- mask¶
遮罩圖樣,0 -- 7。QR-code 編碼器用來選擇可將解碼器混淆降至最低的模組圖樣。整數。索引
[7]。
- data_type¶
解碼器回報的酬載編碼方式。為下列其中一個位元遮罩值:
1數字、2字母數字、4二進位、8漢字。較易讀的形式請參閱下方的個別旗標屬性。整數。索引[8]。
- eci¶
擴充通道解譯(Extended Channel Interpretation)值。編碼酬載中位元組所使用的文字編碼(例如 UTF-8 與 ISO-8859-1 之別)。整數。索引
[9]。
編碼旗標¶
- is_numeric¶
若
data_type指示為數字酬載則為True。索引[11]。
- is_alphanumeric¶
若
data_type指示為字母數字酬載則為True。索引[12]。
- is_binary¶
若
data_type指示為二進位酬載則為True。當此為True時,請檢查eci以判定文字編碼。索引[13]。
- is_kanji¶
若
data_type指示為漢字酬載則為True。漢字符號每個字元為 10 位元,而 MicroPython 並不解析此編碼 -- 必須將酬載視為位元組陣列來處理。索引[14]。