Capacidad y corrección de errores QR
Esta consulta de capacidad y corrección de errores de códigos QR devuelve el máximo de caracteres que cabe en los modos numérico, alfanumérico y byte para una versión y un nivel determinados de QR Code Model 2.
Ejecutar — gratis
Abarca todas las versiones estándar, de la 1 a la 40, y los niveles L, M, Q y H. Puede usarla para comparar límites antes de generar un símbolo, elegir un tamaño adecuado o explicar por qué un mismo contenido cabe con un nivel de corrección y con otro no.
Elija primero la versión y el nivel de corrección
La versión de un código QR determina las dimensiones del símbolo: la versión 1 comienza con 21 por 21 módulos y cada versión posterior añade cuatro módulos por lado hasta llegar a la versión 40. Un mayor número de módulos aporta más espacio, pero el nivel de corrección de errores también reserva una parte para los datos de recuperación. El nivel L deja la mayor capacidad para la carga útil, mientras que M, Q y H dedican progresivamente más palabras de código a la corrección. Esta herramienta toma ambas opciones como punto de partida fijo y devuelve tres límites útiles. Seleccione una versión entera entre 1 y 40 y una de las cuatro letras estándar. El resultado incluye el nivel normalizado, la cantidad de palabras de código disponibles y el máximo de caracteres para cada modo admitido. No examina el contenido ni elige una versión automáticamente. Así obtiene una respuesta previsible al revisar una especificación, validar otra biblioteca QR o comparar configuraciones antes de codificar. Cualquier versión o nivel desconocido se rechaza, sin redondearlo ni sustituirlo silenciosamente.
Comprenda por qué el modo cambia la capacidad
Las tres capacidades difieren porque cada modo QR empaqueta los caracteres con una densidad de bits distinta. El modo numérico almacena grupos de dígitos de forma compacta y ofrece el mayor número de caracteres, pero solo admite los dígitos del cero al nueve. El modo alfanumérico utiliza el alfabeto restringido de 45 caracteres del estándar QR: mayúsculas, dígitos, espacios y algunos signos. El modo byte guarda unidades de ocho bits y es la referencia práctica para texto general o datos binarios, por lo que su máximo es menor. El cálculo parte de las palabras de código de datos que quedan tras la corrección, resta el indicador de modo de cuatro bits y el campo de recuento que depende de la versión, y busca la mayor carga que cabe. El valor byte indica bytes, no letras percibidas. En UTF-8, caracteres acentuados, escrituras no latinas y emojis pueden ocupar varios bytes. Un codificador real también puede alternar modos, añadir un indicador ECI o incorporar metadatos; si el contenido está justo en el límite, compare su secuencia exacta de bits.
Aplique el resultado sin prometer una lectura perfecta
La capacidad es un límite estricto de almacenamiento para el modo, la versión y el nivel elegidos; no garantiza que un símbolo impreso o mostrado se lea con fiabilidad. El tamaño físico de los módulos, la zona tranquila, el contraste, el enfoque, la deformación de la superficie, los defectos de impresión y la cámara siguen siendo decisivos. Mida primero la carga en las unidades correctas y confirme que no supera el máximo devuelto. Si lo supera, puede escoger una versión mayor, reducir el nivel de corrección cuando el entorno lo permita, acortar la carga o utilizar un modo aplicable más denso. Si solo cabe exactamente en el límite, pruebe el codificador y los lectores de producción, porque las cabeceras de modo o los segmentos adicionales pueden alterar el presupuesto final de bits. Una corrección superior resulta útil en etiquetas expuestas a arañazos u obstrucciones, pero reduce la capacidad si no se amplía el símbolo y puede producir módulos físicos menores con un tamaño de impresión fijo. Cada solicitud de API cuesta $0.002 y ofrece un resultado determinista para validaciones, documentación y comprobaciones de compilación repetibles.
Qué puede hacer con ella
Validar límites de carga
Rechace contenido que no quepa en la versión, el nivel de corrección y el modo exigidos por la especificación de un producto.
Comparar configuraciones QR
Observe cómo cambia la capacidad al pasar entre L, M, Q y H antes de elegir el tamaño del símbolo.
Documentar restricciones de integración
Publique límites exactos para los modos numérico, alfanumérico y byte de un dispositivo, una etiqueta o un codificador.
Preguntas frecuentes
¿Qué versiones QR se admiten?
Se admiten todas las versiones de QR Code Model 2, desde la 1 hasta la 40.
¿Qué niveles de corrección de errores puedo usar?
Utilice L, M, Q o H. La consulta rechaza cualquier nivel que no reconozca.
¿La capacidad en bytes equivale al número de caracteres?
Solo cuando cada carácter ocupa un byte. Los caracteres UTF-8 pueden necesitar varios, así que mida la longitud codificada en bytes.
¿Por qué una corrección mayor reduce la capacidad?
Se reservan más palabras de código para la información de recuperación y quedan menos para la carga útil.
¿El máximo incluye la sobrecarga del modo?
Sí. El cálculo contempla el indicador de modo de cuatro bits y el campo de recuento cuyo tamaño depende de la versión.
¿Cuánto cuesta una solicitud de API?
Cada solicitud de API cuesta $0.002. El cálculo es determinista y no utiliza servicios externos.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"version":10,"level":"Q"}'const res = await fetch("https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"version": 10,
"level": "Q"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"version": 10,
"level": "Q"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"version":10,"level":"Q"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"version":10,"level":"Q"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/doc/qr-code-error-correction-capacity", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"version": 10,
"level": "Q"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "doc.qr_code_error_correction_capacity",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 25 |
max_pages | 200 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |