네 가지 레벨
모든 QR코드는 네 가지 오류 정정 레벨 중 하나로 만들어져요. 레벨이 높을수록 리드-솔로몬 오류 정정 코드워드가 더 많이 추가되어, 코드가 더 많이 더러워지거나 긁히거나 가려져도 해독돼요.
이 백분율은 보이는 면적이 아니라 코드워드의 대략적인 복원율이에요. 작은 손상도 여러 코드워드에 걸칠 수 있고, 파인더 패턴이나 포맷 정보가 손상되면 레벨과 관계없이 스캔이 멈출 수 있어요.
- L(낮음): 코드워드의 약 7% 복원
- M(중간): 약 15%
- Q(사분위): 약 25%
- H(높음): 약 30%
크기와의 절충
오류 정정이 많을수록 데이터에 쓸 공간은 줄어요. 같은 내용도 레벨 H에서는 레벨 L보다 더 큰 버전, 즉 더 많고 더 작은 모듈이 필요해요.
예를 들어 버전 1 코드는 레벨 L에서 17바이트를 담지만 레벨 H에서는 7바이트뿐이에요. 버전 40에서는 L이 2,953바이트, H가 1,273바이트예요.
레벨 고르기
레벨 M은 흔한 기본값이고, 깨끗한 환경의 대부분 인쇄물에 알맞아요. 화면에만 쓰거나 아주 깨끗한 코드는 레벨 L로 가장 작게 유지할 수 있어요.
레벨 Q와 H는 닳거나, 거친 표면에 인쇄되거나, 로고에 일부가 가려질 코드에 알맞아요. 모듈 위에 로고를 놓으면 오류 정정 여유분의 일부를 쓰기 때문에, 실제 환경의 손상에 쓸 여유가 줄어요.