Cinco simbologías, y qué acepta realmente cada una
Un formato de código de barras no es una elección de estilo. Cada simbología define su propio conjunto de caracteres y sus propias reglas de longitud, y un escáner configurado para una no leerá otra, así que el desplegable de formato es en realidad una pregunta sobre qué sistema va a leer la etiqueta.
- Code 128 admite caracteres ASCII: letras en ambas cajas, dígitos, puntuación y espacios. Es el predeterminado de propósito general aquí, y el codificador funciona en su modo automático, alternando entre los subconjuntos internos del formato para que las tiradas largas de dígitos se empaqueten más apretadas que el texto mezclado. Un emoji, o la mayoría de letras acentuadas, no se podrán codificar. Para el español eso importa: una eñe o una vocal con tilde hacen fallar un Code 128, así que una referencia interna que lleve “año” o “diseño” hay que escribirla sin esos caracteres.
- EAN-13 es el código de producto de venta al público usado internacionalmente. Doce o trece dígitos, nada más.
- UPC-A es su equivalente norteamericano. Once o doce dígitos, nada más.
- Code 39 cubre inventario interno, etiquetas de activos y etiquetado industrial. Mayúsculas de
la A a la Z, dígitos, espacio y los símbolos
-.$/+%. - ITF, Interleaved 2 of 5, es el formato de cajas de envío y palés. Solo dígitos, y siempre en cantidad par, porque el formato los codifica en parejas entrelazadas.
Dígitos de control, y el que nadie añade por ti
EAN-13 y UPC-A terminan los dos en un dígito de control calculado a partir de los dígitos anteriores, y de aquí vienen la mayoría de las generaciones fallidas. Dale a EAN-13 doce dígitos y el decimotercero se calcula y se añade por ti. Dale los trece y el último se verifica en lugar de recalcularse, así que un solo dígito mal tecleado en cualquier parte del número invalida el valor entero. UPC-A se comporta igual un dígito más abajo: once dígitos reciben un duodécimo, doce dígitos se comprueban.
Eso significa que la costumbre más segura cuando estás inventando códigos en lugar de copiarlos es escribir la forma corta y dejar que se calcule el dígito de control. Cuando estás copiando un número de un envase existente, escríbelo entero y deja que la comprobación verifique tu tecleo, lo que convierte la herramienta en un corrector.
Code 39 tiene un carácter de control opcional propio y esta herramienta no lo añade. ITF no tiene dígito de control en la forma que se genera aquí, solo la regla de cantidad par.
Dos píxeles por módulo, cien píxeles de alto
La barra más estrecha se dibuja de dos píxeles de ancho y toda barra más ancha es un múltiplo de eso, las barras miden cien píxeles de alto, y una zona de silencio de diez píxeles rodea el conjunto. Esa zona importa más de lo que parece: los escáneres necesitan ese margen en blanco para encontrar dónde empieza y acaba el código, y recortarlo en un editor de imágenes es una forma clásica de romper un código de barras por lo demás válido.
Conviene decir de dónde salen esos tres números, porque no los elegimos nosotros: son los valores por defecto de JsBarcode, la biblioteca que hace el dibujado, y esta herramienta solo le pasa el formato y si debe imprimir el texto legible. No los sobrescribimos porque son razonables para etiquetas impresas, pero son la convención de la biblioteca y no un ajuste calibrado por nosotros.
El PNG sale de un lienzo exactamente a ese tamaño, así que ampliarlo dentro de un documento suavizará los bordes de las barras. El SVG describe la misma geometría como vectores, que es la razón por la que es la elección correcta para cualquier cosa que se vaya a imprimir a un tamaño que todavía no has decidido.
Qué te está diciendo un fallo al generar
Cuando un valor no satisface el formato elegido, la página muestra un mensaje genérico pidiéndote que revises la entrada; el motivo concreto se escribe en la consola del navegador y no en la página. Así que el mensaje no te va a nombrar el problema, y en la práctica casi siempre es uno de una lista corta: un número EAN-13 o UPC-A de longitud equivocada o con mal dígito final, un valor ITF con un número impar de dígitos, una letra o un signo de puntuación en un formato solo de dígitos, o un carácter no ASCII en un valor Code 128. Los espacios de los extremos no están en esa lista, porque se recortan antes de codificar.
El diagnóstico más rápido es cambiar el formato a Code 128 y volver a intentarlo. Si genera, el valor estaba bien y el problema eran las reglas del formato.
De un valor a un archivo en disco
- Escribe o pega el valor en la caja. El botón sigue desactivado hasta que haya algo dentro.
- Elige el formato que corresponde al sistema que va a leer la etiqueta, no el que queda más bonito.
- Fija la descarga en PNG para documentos, hojas de cálculo y la mayoría de software de etiquetas, o SVG cuando el código vaya a una maquetación de impresión.
- Deja marcada la opción de mostrar el texto legible bajo el código salvo que vayas a poner tu propio pie, en cuyo caso desmárcala para obtener solo las barras.
- Genera. La imagen aparece como vista previa, con un enlace de descarga debajo.
Para una hoja entera de códigos en lugar de una etiqueta suelta, el generador masivo de códigos QR trabaja sobre una lista, y el generador de etiquetas monta la cuadrícula imprimible.

