Modos de codificación: numérico, alfanumérico, byte, kanji y ECI
Cómo codifican datos los códigos QR: cinco modos con diferentes conjuntos de caracteres y eficiencia. Cuándo usar cada modo y la codificación de modo mixto.
Modos de codificación: numérico, alfanumérico, byte, kanji y ECI
Los códigos QR admiten varios modos de codificación, cada uno optimizado para diferentes conjuntos de caracteres. Elegir el modo correcto afecta la eficiencia con la que se empaquetan los datos en el símbolo, impactando directamente la versión requerida y el tamaño físico.
Modo numérico (0001)
El modo más eficiente, que codifica los dígitos 0-9 a aproximadamente 3,3 bits por carácter. Tres dígitos se empaquetan en 10 bits. Use el modo numérico para números de teléfono, números de serie e identificadores numéricos.
Capacidad: hasta 7.089 caracteres en la versión 40, nivel de EC L.
Modo alfanumérico (0010)
Codifica 45 caracteres: dígitos 0-9, mayúsculas A-Z, espacio y los símbolos $ % * + - . / :. Dos caracteres se empaquetan en 11 bits (5,5 bits cada uno). Este modo es ideal para URLs que contienen solo letras mayúsculas.
Capacidad: hasta 4.296 caracteres en la versión 40, nivel de EC L.
Modo byte (0100)
Codifica cualquier valor de byte de 8 bits (0-255), usando byte mode encoding (Latin-1, 256 characters)." data-category="Standards & Specifications">ISO 8859-1 por defecto. Cada carácter usa exactamente 8 bits. Este es el modo más versátil y se utiliza para URLs con letras minúsculas, direcciones de correo electrónico, datos vCard y texto codificado en UTF-8.
Capacidad: hasta 2.953 bytes en la versión 40, nivel de EC L.
Modo kanji (1000)
Codifica caracteres de doble byte Shift JIS a 13 bits por carácter — más eficiente que los 16 bits del modo byte para texto japonés. Este modo formaba parte del diseño original del código QR debido a sus orígenes en la industria automotriz japonesa.
Modo ECI (0111)
Extended Channel Interpretation permite especificar codificaciones de caracteres alternativas más allá del ISO 8859-1 predeterminado. Las asignaciones ECI incluyen UTF-8 (ECI 26), varias codificaciones ISO y conjuntos de caracteres regionales.
Codificación en modo mixto
Un único código QR puede cambiar entre modos dentro del mismo símbolo. Por ejemplo, una cadena como HTTP://EXAMPLE.COM/12345 puede usar el modo alfanumérico para la parte de la URL y el modo numérico para los dígitos, ahorrando espacio. Cada cambio de modo cuesta un indicador de modo de 4 bits más un indicador de conteo de caracteres.
Cómo elegir el modo correcto
La mayoría de las bibliotecas de códigos QR gestionan la selección de modo automáticamente. Sin embargo, entender los modos ayuda a optimizar los datos para códigos más pequeños:
- Use URLs en mayúsculas para activar el modo alfanumérico en lugar del modo byte
- Separe los segmentos numéricos largos (como números de teléfono) para la codificación en modo numérico
- Para texto internacional, el modo ECI con UTF-8 es el enfoque estándar
Puntos clave
- Modo numérico: 3,3 bits/carácter — el más eficiente solo para dígitos
- Alfanumérico: 5,5 bits/carácter — mayúsculas, dígitos y algunos símbolos
- Byte: 8 bits/carácter — universal, maneja cualquier dato
- Kanji: 13 bits/carácter — eficiente para caracteres japoneses Shift JIS
- La codificación en modo mixto puede combinar modos para minimizar el tamaño del código QR