← 全部文章

QR Code 糾錯等級詳解:L、M、Q 和 H

2026-10-12 · 更新於 2026-10-26 error correction design technical

QR Code 自帶糾錯能力,所以即使碼的一部分弄髒、刮花或被遮住,也仍然能讀出來。糾錯分四個等級:L 最多能恢復約 7% 的資料,M 約 15%,Q 約 25%,H 約 30%。等級越高,越能在中間放 Logo 或印在粗糙的材料上,代價是圖案更密。大多數印刷用的碼,預設選 M 就好;加 Logo 時用 H。

糾錯是怎麼工作的

QR Code 使用裡德-所羅門碼(Reed–Solomon),和保護 CD 光碟資料、太空通訊資料的數學方法同屬一類。生成 QR Code 時,會在內容之外附加額外的「修復」資料。如果有些模組(那些小方塊)讀不出來,掃描器就用修復資料把缺失的部分重建出來。附加多少修復資料,取決於你選的等級。

四個等級

等級可恢復適用場景
L約 7%乾淨的數字場景,比如顯示在螢幕上的碼;讓圖案儘可能簡單
M約 15%印刷碼的理想預設值
Q約 25%可能被磨損或印在粗糙材料上的碼
H約 30%中間有 Logo 的碼,或用在惡劣環境裡的碼

這些百分比是指碼的資料最多可以缺失多少仍能解碼。它們是理想損壞情況下的上限;實際中,如果損壞的位置不對,比如蓋住了角上的三個大方塊,即使沒到上限,碼也可能失效。

代價:密度

修復資料越多,同樣的內容需要的模組就越多。把等級從 L 提到 H,可能讓碼升高好幾個版本,也就是行列更多、方塊更小。在印刷尺寸固定時,方塊越小越難識別。所以等級高並不自動更好:它是一份要佔用空間的保險。

如果既要 Logo 又要印得小,就縮短內容。動態 QR Code 裡只存一個短連結,能給高糾錯等級留出餘地,又不會讓方塊變得很小。

Logo 與糾錯

中間的 Logo 是故意遮住了一部分模組。高糾錯等級(Q 或 H)能彌補被遮住的區域,但只在它的上限之內。把 Logo 控制在碼寬的五分之一左右或更小,放在正中、遠離角上的三個大方塊,並且一定要掃一下打樣。如果掃不出來,先縮小 Logo,再考慮調其他設定。

怎麼選等級

  1. 碼顯示在螢幕上,乾淨且夠大? L 或 M。
  2. 印在紙上,用在室內? M。
  3. 印在紙板、布料、瓶子或任何會被磨損的東西上? Q。
  4. 要加 Logo? H,配一個不大的 Logo,並且測試。
  5. 要印得很小? 用 M,內容儘量短,而不是用 H 配一個很密的圖案。

尺寸和等級同樣重要:印刷尺寸指南按掃描距離給出了最小寬度。

其他值得了解的上限

一個 QR Code 最多能存約 7,089 個數字、4,296 個字母數字字元或 2,953 個位元組,而且只有在最低糾錯等級下才能達到。實際上,超過幾百個字元的碼,在普通印刷尺寸下用手機就很難掃,這也是應該連結到一個頁面、而不是把文字直接放進碼裡的另一個原因。

常見問題

我該用哪個糾錯等級?

大多數印刷碼用 M。加 Logo 或預計會磨損時用 H,只有乾淨、夠大、顯示在螢幕上的碼才用 L。

糾錯等級越高,QR Code 越好掃嗎?

不一定。當碼的一部分會被遮住或損壞時,它有幫助;但它會讓圖案更密,印得小的時候反而更難識別。根據場景選等級,而不是選最高的那個。

為什麼我加了 Logo 的 QR Code 掃不出來?

很可能是 Logo 太大,或者蓋住了關鍵區域。把它縮到碼寬的五分之一左右或更小,挪到正中,使用 H 等級,加大碼的印刷尺寸,再測試一次。如果還是不行,就排查一下其他常見原因。

免費建立一個動態 QR Code:印出去後也能隨時改連結,每次掃描都有統計。

製作你的 QR Code →