# 什么是二维码容错率

二维码的容错率（纠错等级），指的是二维码即使部分被遮挡、污损或损坏，依然能被正常扫描识别的能力。容错率越高，二维码能“自我修复”的范围就越大，但代价是可存储的数据容量减少。

## 容错的原理

二维码的容错能力来源于一种叫 里德–所罗门纠错码（Reed–Solomon Error Correction） 的技术。

它的原理是：

- 在编码时，除了存放真实数据，还额外加入一部分“冗余信息”；
- 当扫描时发现某些数据模块丢失或错误，这些冗余信息就能用来推算出原始数据；
- 冗余信息越多，二维码的抗损坏能力越强，但可用来存放实际内容的空间就相应减少。

比如：123被编码成123123，这样只要扫描到一部分二维码图片，二维码内容还是可以被全部读到。

容错率本质上就是在 “存储容量” 和 “容错能力” 之间做取舍。

### 容错能力等级

国际标准（ISO/IEC 18004）定义四个可选等级：

- 等级：L；可修复比例：7%；说明：冗余最少，容量最大，但抗损坏能力最低
- 等级：M；可修复比例：15%；说明：平衡型，适合大多数无遮挡应用
- 等级：Q；可修复比例：25%；说明：冗余较多，抗损坏能力强
- 等级：H；可修复比例：30%；说明：冗余最多，抗损坏最强，常用于带Logo 或环境复杂的场景

## 草料二维码的容错率默认规则

### 无 Logo 时

草料二维码生成器会 优先保持 [二维码版本](/help/qr-code-tools/qr-code-knowledge/overview "二维码版本") 尽量小（即码型尽量紧凑），并按以下逻辑自动选择容错率：

- 能用 Q（25%）且不提升版本 → 选 Q（25%）
- 若用 Q（25%） 会导致码版本增加 → 降到 M（15%），保持二维码更小
- 当内容再增长，连 M（15%）也需要升版本时 → 回到 Q（25%），因为版本无论如何都得增加，就优先保证更高的容错

### 有 Logo 时

如果二维码中嵌入 Logo，草料会 默认使用最高容错率 H（30%）。

原因是：

- Logo 一般位于二维码中心，会遮挡掉部分关键信息模块
- 提升到最高容错率，可以最大限度弥补因遮挡而丢失的数据，提高二维码的可读性和扫描成功率

### 实际建议

- 无 Logo：生成器会在 15% 与 25% 间自动切换，兼顾小码型和扫描稳健性。
- 有 Logo：直接默认 30%，确保可读性。
- 场景复杂（印刷、户外、易磨损）：建议选择较高容错率（25% 或 30%）。
- 场景单纯（屏幕展示、内容很长）：可以使用较低容错率（15%），减少二维码尺寸。
