跳到主要内容

二维码纠错级别详解:L / M / Q / H 该怎么选

二维码的纠错级别决定码被遮挡 / 损坏多少还能扫:L 能救回约 7%、M 约 15%、Q 约 25%、H 约 30%。但纠错不是越高越好——它会加冗余码点,码因此变密、同样物理尺寸下每个码点更小,如果你又印得小,反而更难扫。日常码用 M 就好;中心放 logo、或印在可能磨损的表面上时调到 Q 或 H;并保持内容简短,别让高纠错把码挤得太密读不出。

纠错到底在做什么

二维码用里德-所罗门(Reed–Solomon)纠错:在码里预先掺入冗余码点,即使一部分缺失、糊掉或被盖住,扫描器也能把数据还原回来。你选的级别决定能容忍多少损失。这就是为什么中心被 logo 盖掉、或贴纸轻微撕裂的码还能扫——冗余把缺口补上了。

四个级别,用大白话和数字说

ISO/IEC 18004 标准定义了四档,百分比大致是码可以有多少不可读还能扫出:

  • L(低)—— 约 7%。冗余最少、码最稀疏。适合屏幕上扫的干净数字码。
  • M(中)—— 约 15%。日常默认档,多数印刷码的好平衡点。
  • Q(四分位)—— 约 25%。给可能被磨损、或带小 logo 的码多一层保险。
  • H(高)—— 约 30%。最强冗余——中心 logo 盖掉一大块、或粗糙 / 工业表面时的正确选择。

代价:级别越高,码越密

「一律用 H」的建议通常漏掉这点:调高级别会增加码点。物理尺寸固定时,码点越多、每个方块越小——而小码点更难扫,尤其是印得小、隔得远的时候。所以 H 不是免费升级。如果你既上 H,又印得很小,还塞了长网址,最终可能比老老实实用 M 还难扫。

什么时候调高,什么时候别动

一个简单的决策清单:

  • 要加中心 logo?用 H。logo 盖住码的一部分,正是 H 约 30% 的容错能把被盖的中心还原出来。(二维码猫在你加 logo 时会自动切到 H。)
  • 印在会被拿捏、磨蹭、弯曲的东西上(包装、设备标签、手环)?Q 或 H 给一层安全余量。
  • 普通码、印刷干净、近距离扫?留在 M,别交你用不上的「密度税」。
  • 内容长又印得小?别想靠 H 补救——去缩短网址或印大些。冗余救不了「本就小到分辨不出」的码点。

选完级别记得测一下

纠错级别是个权衡,所以别凭感觉、要验结果。选好级别和尺寸后,用二维码猫的可扫性测试跑一遍——它会把码缩小、降对比来解码,你就能看到所选级别在真实条件下还读不读得出,还是被增加的密度拖过了临界点。

常见问题

二维码纠错级别该选哪个?

多数码用 M。加中心 logo 时调到 H(logo 盖住一部分),可能磨损 / 弯曲的表面用 Q 或 H,屏幕上的干净码可用 L。别什么都默认 H——它会让码更密,印小了反而更难扫。

纠错级别越高,二维码越可靠吗?

只在一定范围内成立。它能容忍更多损坏,但也会加码点,同样物理尺寸下每个方块更小——你若印小或隔远,可靠性反而下降。合适的级别是在「容错」和「码点大小」之间取平衡。

带 logo 的二维码要用什么纠错级别?

用 H(约 30%)。中心 logo 盖住部分数据,只有最高档能稳定还原被盖区域。logo 控制在码面约 1/4 以内并居中。二维码猫在你加 logo 时会自动切到 H。

二维码上的 L、M、Q、H 是什么意思?

它们是 ISO/IEC 18004 标准的四档纠错级别,分别能救回约 7%(L)、15%(M)、25%(Q)、30%(H)被遮挡或损坏的码。级别越高冗余越多,代价是码更密。