Conceptos básicos de QR

La anatomía de un código QR: cada parte explicada

Patrones de posición, patrones de alineación, patrones de temporización, zonas de silencio y módulos de datos — un recorrido amable por cada componente dentro de un código QR.

La anatomía de un código QR es sorprendentemente ordenada: cada uno de esos pequeños cuadrados pertenece a una región con nombre y una función específica, desde los tres grandes marcadores de las esquinas que ayudan a los escáneres a encontrarlo hasta los módulos de datos que transportan tu mensaje.

A primera vista, un código QR parece estática aleatoria. No lo es. Es una disposición cuidadosamente estructurada donde cada zona se gana su lugar. Una vez que sabes nombrar las partes, nunca volverás a ver esos cuadrados de la misma manera. Hagamos el gran recorrido. 🐾

¿Qué son los tres grandes cuadrados de las esquinas?

Son los patrones de posición (finder patterns), y son la característica más reconocible de cualquier código QR. Cada uno es un conjunto de cuadrados anidados — un cuadrado oscuro, un anillo claro y un centro oscuro — colocados en tres de las cuatro esquinas.

Su función es permitir que un escáner localice el código al instante y averigüe su orientación. Cuando un escáner traza una línea a través de un patrón de posición, siempre ve la misma proporción oscuro-claro-oscuro de 1:1:3:1:1, una firma rara en las imágenes cotidianas. Como hay tres patrones y no cuatro, el lector también puede saber en qué sentido está girado el código. Este es el núcleo de la idea "Quick Response" (respuesta rápida) — lee nuestra guía sobre cómo funcionan los códigos QR para ver los patrones de posición en acción.

¿Qué son los separadores?

Justo al lado de cada patrón de posición hay una franja de un módulo de ancho de módulos claros llamada separador. Crea un borde blanco limpio entre el patrón de posición y los datos circundantes. Sin él, los datos podrían tocar el patrón de posición y difuminar esa firma crucial 1:1:3:1:1, dificultando la detección del código.

¿Qué son los patrones de temporización?

Fíjate bien en la fila y la columna que conectan los patrones de posición y verás una línea punteada de módulos oscuros y claros alternos. Son los patrones de temporización. Actúan como una regla, indicando al escáner exactamente cuántos módulos hay y dónde se sitúa cada uno — esencial para alinear la cuadrícula de muestreo, sobre todo en códigos grandes.

¿Qué son los patrones de alineación?

Todo código QR salvo el más pequeño (versión 1) incluye uno o más patrones de alineación — cuadrados anidados más pequeños repartidos por el código según su versión. Ayudan al escáner a corregir la distorsión cuando un código se fotografía en ángulo, se imprime sobre una superficie curva o queda ligeramente deformado.

El número de patrones de alineación crece con el tamaño del código. Un pequeño código de versión 2 tiene solo uno; un gran código de versión 40 tiene docenas. Nuestra guía sobre las versiones y tamaños de los códigos QR explica cómo funciona ese escalado.

ComponenteDónde estáQué hace
Patrones de posiciónTres esquinasLocalizan el código y su orientación
SeparadoresAlrededor de cada patrón de posiciónAíslan los patrones de posición de los datos
Patrones de temporizaciónEntre los patrones de posiciónFijan la cuadrícula y el número de módulos
Patrones de alineaciónRepartidos por el interiorCorrigen la distorsión
Información de formatoCerca de los patrones de posiciónNivel de error y máscara usada
Información de versiónCerca de dos patrones de posición (v7+)Declara la versión del código
Región de datos y ECTodo lo demásTu mensaje más los datos de recuperación
Zona de silencioMargen exteriorEnmarca el código para los escáneres

¿Dónde está la información de formato?

Envolviendo dos bordes del patrón de posición superior izquierdo (y reflejada cerca de los otros dos) está la información de formato. Esta pequeña pero vital franja le indica al escáner dos cosas: qué nivel de corrección de errores usa el código (L, M, Q o H) y cuál de los ocho patrones de máscara se aplicó. El lector tiene que conocer la máscara para descifrar los datos, así que esta información está a su vez protegida por una fuerte corrección de errores y almacenada dos veces por seguridad.

¿Quieres saber por qué importa la máscara? Consulta el enmascaramiento de datos en los códigos QR. Y para los niveles de error, nuestra guía de corrección de errores te tiene cubierto.

¿Qué es la información de versión?

En los códigos más grandes — versión 7 y superiores — hay un bloque adicional llamado información de versión, colocado cerca de los patrones de posición superior derecho e inferior izquierdo. Declara explícitamente la versión del código (su tamaño), dando al escáner una forma fiable de confirmar el tamaño de la cuadrícula. Los códigos más pequeños no lo necesitan porque su tamaño puede deducirse solo de las posiciones de los patrones de posición.

¿Dónde viven mis datos reales?

Todo lo que no es uno de los patrones de función anteriores es la región de datos y corrección de errores — el grueso del código. Aquí es donde vive tu mensaje, codificado como bits e intercalado con bytes de recuperación Reed–Solomon.

Los datos se escriben en un camino en zigzag que serpentea arriba y abajo por columnas de dos módulos de ancho, empezando por la esquina inferior derecha y tejiendo hacia la superior izquierda, sorteando limpiamente los patrones de función. A grandes rasgos, la región es una mezcla de dos cosas:

  • Palabras de código de datos — tu mensaje codificado (enlace, texto, Wi-Fi, etcétera).
  • Palabras de código de corrección de errores — los bytes redundantes que permiten que un código dañado siga leyéndose.

El reparto entre ambas depende del nivel de error que elijas. Más protección significa que una mayor parte de esta región se destina a datos de recuperación y menos a tu mensaje — consulta cuántos datos puede contener un código QR.

¿Por qué cuenta el margen vacío como parte del código?

La zona de silencio es el borde en blanco — idealmente de unos cuatro módulos de ancho — que rodea todo el código. No es decoración ni espacio desperdiciado; los escáneres realmente la necesitan para separar el código del texto y los gráficos circundantes. Apretuja un código contra un logotipo o un párrafo y puede que simplemente se niegue a escanearse. Nuestro artículo dedicado a la zona de silencio explica los errores más comunes.

Los patrones de función le indican al escáner cómo leer; la región de datos le indica qué leer; la zona de silencio le indica dónde termina el código.

Poniéndolo todo junto

Un código QR es una pequeña maravilla de disposición: localizar con los patrones de posición, aislar con los separadores, medir con los patrones de temporización, enderezar con los patrones de alineación, configurar con la información de formato y versión, transportar el mensaje en la región de datos y enmarcar todo el conjunto con una zona de silencio. Nada es aleatorio — ni siquiera las partes que lo parecen.

¿Quieres un código limpio para diseccionar tú mismo? Puedes crear un código QR gratis con QR Puppy — estático, de código abierto y sin rastreo.

Preguntas frecuentes

¿Por qué solo hay tres patrones de posición y no cuatro?

Tres bastan para fijar la posición y la rotación del código, y dejar libre la cuarta esquina le da al escáner una forma inequívoca de detectar la orientación. Un cuarto patrón de posición sería redundante y desperdiciaría espacio que puede contener datos en su lugar.

¿Puedo poner un logotipo sobre la región de datos?

Sí, dentro de unos límites. La corrección de errores te permite tapar una porción modesta de la región de datos — a menudo el centro — y aun así escanear. Usa un nivel de error más alto (Q o H) y mantén el logotipo lo bastante pequeño como para no superar el umbral recuperable.

¿Todos los códigos QR tienen patrones de alineación?

No. Los códigos más pequeños (versión 1) no tienen ninguno. A partir de la versión 2 aparecen, y su número aumenta con el tamaño del código para ayudar a los escáneres a lidiar con la distorsión en cuadrículas más grandes.

¿Qué pasa si un patrón de posición está dañado?

Si un escáner no puede detectar los tres patrones de posición, normalmente no puede localizar el código en absoluto, y falla antes de que empiece siquiera la decodificación. Los patrones de posición son la única región que nunca deberías cubrir — protégelos por encima de todo.

¿Es realmente tan importante la información de formato?

Muchísimo. Le indica al lector qué máscara quitar y qué nivel de error esperar. Como perderla haría ilegible todo el código, está fuertemente protegida contra errores y almacenada en dos lugares del código.

Crea un código QR de forma honesta 🐾

Gratis para siempre, sin rastreo, sin caducidad — generado en tu propio navegador.

🎨 Crear un código QR →