← 所有文章

QR Code 原理與結構完整解析

2026 年 3 月 · 閱讀時間約 7 分鐘

QR Code(Quick Response Code)是日本 Denso Wave 公司在 1994 年發明的二維條碼。從超市結帳到行動支付,從餐廳菜單到疫苗證明,QR Code 已經深入我們生活的每個角落。但你有沒有想過,那些黑白方塊究竟是如何編碼和解讀資訊的?

QR Code 的基本結構

一個標準的 QR Code 包含以下幾個關鍵區域:

1. 定位圖案(Finder Pattern)

QR Code 三個角落的大型正方形圖案,用來幫助掃描器快速定位 QR Code 的位置和方向。每個定位圖案是一個 7x7 的模組,由巢狀的黑白方塊組成。無論從哪個角度掃描,都能正確辨識。

2. 對齊圖案(Alignment Pattern)

較大的 QR Code(版本 2 以上)會包含額外的對齊圖案,幫助校正因印刷歪斜或表面彎曲造成的變形。

3. 時序圖案(Timing Pattern)

連接定位圖案的黑白交替線條,讓掃描器確定模組的座標位置。

4. 格式資訊(Format Information)

包含錯誤修正等級和遮罩模式的資訊,位於定位圖案附近。

5. 資料區域(Data Area)

QR Code 的主體部分,包含實際編碼的資料和錯誤修正碼。

重點摘要:QR Code 的巧妙之處在於,即使部分被遮蓋或損壞,仍然可以透過錯誤修正機制成功讀取。這得益於 Reed-Solomon 錯誤修正碼的強大能力。

QR Code 的版本

QR Code 有 40 個版本,從版本 1(21x21 模組)到版本 40(177x177 模組)。版本越高,能存儲的資料量越大:

版本模組數最大數字容量最大英數容量
版本 121 x 214125
版本 537 x 3715493
版本 1057 x 57652395
版本 2097 x 971,8521,123
版本 40177 x 1777,0894,296

錯誤修正等級

QR Code 使用 Reed-Solomon 錯誤修正碼,提供四個等級的容錯能力:

等級代號可修復比例適用場景
L約 7%乾淨環境,最大容量
M約 15%一般用途(預設)
四分之一Q約 25%較惡劣環境
H約 30%嵌入 Logo、戶外使用

高等級的錯誤修正會佔用更多空間,因此同版本的 QR Code 在高容錯等級下能存儲的資料量會減少。

編碼模式

QR Code 支援多種資料編碼模式,會自動選擇最有效率的方式:

QR Code vs 傳統條碼

特性傳統條碼(1D)QR Code(2D)
資料容量約 20 個字元最多 7,089 個數字
編碼方向僅水平水平 + 垂直
錯誤修正最高可修復 30%
掃描角度必須水平對齊360 度任意角度
資料類型僅數字/文字數字、文字、URL、二進位
立即產生你的 QR Code →

結語

QR Code 看似簡單的黑白方塊,背後蘊含了精密的編碼理論和容錯設計。從 1994 年在汽車零件追蹤中誕生,到如今無處不在的數位橋梁,QR Code 的成功來自於它巧妙的技術設計和極高的實用性。

參考文獻

  1. ISO/IEC. "ISO/IEC 18004:2015 — QR Code bar code symbology specification." International Organization for Standardization, 2015. https://www.iso.org/standard/62021.html
  2. Denso Wave. "History of QR Code." Denso Wave Incorporated, 2024. https://www.qrcode.com/en/history/
  3. Reed, I. S. & Solomon, G. "Polynomial Codes Over Certain Finite Fields." Journal of the Society for Industrial and Applied Mathematics, vol. 8, no. 2, 1960, pp. 300-304.
  4. Wikipedia contributors. "QR code." Wikipedia, The Free Encyclopedia, 2025. https://en.wikipedia.org/wiki/QR_code