Los códigos QR y los códigos de barras convierten texto o un número en un patrón que una cámara puede leer. Parecen no tener relación, pero ambos se apoyan en las mismas dos ideas: una disposición fija que el lector puede encontrar y orientar, y redundancia para que una mancha no rompa el mensaje. Créelos con el Generador de Códigos QR y el Generador de Códigos de Barras, y lea códigos QR con el Escáner de Códigos QR.
Cómo se construye un código QR
Un código QR es una cuadrícula cuadrada de módulos oscuros y claros. Tres cuadrados grandes en las esquinas (patrones de búsqueda) indican al lector dónde está el código y cómo está girado; patrones más pequeños de alineación y temporización corrigen la inclinación y la curvatura; una zona de silencio de cuatro módulos en blanco alrededor del borde separa el código de su entorno.
El tamaño lo fija la versión, de 1 a 40. Un código de versión v mide 17 + 4v módulos de lado: la versión 1 es de 21 × 21 y la versión 40 de 177 × 177. El generador elige la versión más pequeña en la que caben los datos, algo que la biblioteca confirma: HELLO cabe en la versión 1 (21 × 21), mientras que una URL de 20 caracteres necesita la versión 2 (25 × 25) con nivel M y la versión 3 (29 × 29) con nivel H. Menos datos dan un código más pequeño con módulos más grandes, que se lee con más facilidad.
Corrección de errores
Los códigos QR guardan datos adicionales para que un código dañado aún pueda decodificarse. Se cambia capacidad por resistencia eligiendo uno de cuatro niveles:
| Nivel | Daño que soporta | Úselo cuando |
|---|---|---|
| L | ≈ 7% | El código es nítido y grande, como en una pantalla |
| M | ≈ 15% | El valor por defecto de la mayoría de códigos impresos |
| Q | ≈ 25% | El código puede ensuciarse o rozarse |
| H | ≈ 30% | Se superpone un logotipo, o el código está en una superficie difícil |
Los niveles más altos hacen el código más denso. Una URL corta con nivel L es de versión 2, mientras que la misma URL con nivel H es de versión 3.
Cuánto cabe en un código QR
El máximo es la versión 40 con nivel L, y depende del tipo de datos (confirmado generando cada límite):
| Datos | Máximo de caracteres |
|---|---|
| Solo dígitos | 7,089 |
| Letras (mayúsculas), dígitos y algunos símbolos | 4,296 |
| Bytes cualesquiera (por ejemplo, texto UTF-8) | 2,953 |
Con nivel H, la misma versión admite como máximo 1,273 bytes. Consejo práctico: mantenga las URL cortas y use un enlace corto en lugar de uno largo con parámetros de seguimiento; expanda un enlace corto con seguridad con el Expansor de URL Corta.
Cómo funciona un código de barras
Un código de barras lineal codifica dígitos como barras y espacios de anchuras fijas. Los tipos habituales en comercio son UPC-A (12 dígitos, Norteamérica) y EAN-13 (13 dígitos, en todo el mundo); Code 128 codifica ASCII completo y es habitual en logística. Los códigos de barras de comercio terminan con un dígito de control para que el lector detecte una lectura errónea.
El dígito de control es fácil de calcular: pondere los dígitos alternadamente, sume y elija el dígito que lleva la suma al siguiente múltiplo de 10.
- EAN-13 de
590123412345: pesos 1 y 3 alternados dan una suma de 83, así que el dígito de control es10 − 3 = 7y el código completo es 5901234123457. - UPC-A de
03600029145: pesos 3 y 1 alternados dan una suma de 58, así que el dígito de control es10 − 8 = 2y el código completo es 036000291452.
Un EAN-13 tiene 95 módulos de ancho, por eso los códigos de barras necesitan un tamaño físico suficiente para que las barras sigan siendo legibles. Imprima al 80 % del tamaño nominal o más y mantenga una zona de silencio a ambos lados.
Errores frecuentes
- Poco contraste o fondo de color. Use oscuro sobre claro; los códigos invertidos fallan en muchos lectores.
- Estirar un código. Mantenga los módulos cuadrados y la zona de silencio intacta.
- Imprimir demasiado pequeño. Un módulo QR debe medir al menos unos 0,5 mm; pruebe con un móvil real.
- Usar un enlace de seguimiento que pueda romperse. Si el servicio de enlaces desaparece, todos los códigos impresos fallan.