Saltar al contenido

Generador de códigos de barras

Crea códigos de barras CODE128, EAN-13, EAN-8, UPC-A, CODE39 e ITF-14 en PNG o SVG. Calcula y verifica el dígito de control; ajusta grosor, margen y color.

Vista previa

Introduce un valor.

p. ej. ORDER-2026-0042

Formato de uso general que admite letras, cifras y signos (ASCII). Se usa para inventarios, números de pedido, etc.

Apariencia

Colores

Lo que introduces se procesa solo en este navegador y nunca se envía a un servidor. Cómo funciona

123456 se convierte en un código de barras Code 128 real

Cómo se usa

Elige el «Formato del código de barras», escribe el «Valor» y el código se dibuja en la «Vista previa». Al cambiar de formato, el campo «Valor» te indica cuántos dígitos admite ese formato o te pone un ejemplo.

  • Apariencia: «Grosor de las barras» es la anchura de la barra más fina, de 1 a 8 px (2 px por defecto); «Altura» va de 20 a 400 px (100 px por defecto), y «Margen», el espacio vacío que rodea el código, de 0 a 50 px (10 px por defecto). Un valor fuera de rango se dibuja con el límite más cercano. Si desactivas «Mostrar el valor como texto», desaparecen los caracteres de debajo de las barras.
  • Colores: «Color de las barras», «Color del texto» y «Color de fondo» se eligen por separado, y con «Opacidad del fondo» al 0 % el fondo queda transparente.
  • Descarga: «Descargar PNG» guarda la imagen al doble de la resolución configurada. En un código con grosor de 2 px, cada barra fina mide 4 píxeles en el PNG. «Descargar SVG» da un archivo vectorial, que no pierde nitidez al ampliarlo.

La biblioteca que dibuja las barras (JsBarcode) no se descarga al abrir la página, sino cuando escribes el primer valor. Por eso el primer código puede tardar un poco y, si te quedas sin conexión después de abrir la página, puede aparecer «No se puede crear un código de barras con este valor.».

Qué valores admite cada formato

Formato Valor que admite Dónde se usa sobre todo
CODE128 Letras, cifras y signos (ASCII). Sin límite de longitud Formato de uso general. El GS1-128 de las etiquetas logísticas se basa en él
EAN-13 12 o 13 dígitos Productos de venta al público en todo el mundo
EAN-8 7 u 8 dígitos Productos de venta al público con envase pequeño
UPC-A 11 o 12 dígitos Productos de venta al público, sobre todo en Norteamérica
CODE39 Cifras, mayúsculas, los signos - . $ / + % y el espacio Números internos formados por cifras y mayúsculas
ITF-14 13 o 14 dígitos Logística por cajas, no por unidades sueltas

En los cuatro formatos que solo admiten cifras, si escribes la longitud corta se calcula y se añade el último dígito (el dígito de control), y si escribes la larga se comprueba que ese último dígito sea correcto. Un guion o un espacio en medio provoca el aviso «Introduce solo números.», así que escribe las cifras seguidas. En CODE39, las minúsculas se pasan a mayúsculas antes de dibujar.

Carácter de control CODE39: Viene desactivado, y el código se genera igual sin él. Al elegir CODE39, debajo de «Valor» se muestra siempre «Carácter de control calculado», pero ese carácter solo se añade de verdad al final del código si marcas la casilla. Por ejemplo, el carácter de control de SAMPLE-123 es X. Actívalo únicamente si el sistema que va a leer el código lo exige.

El dígito de control, con un ejemplo

El dígito de control es la última cifra del número, y sirve para detectar que alguien lo ha copiado mal o que el lector lo ha leído mal. EAN-13, EAN-8, UPC-A e ITF-14 siguen la misma regla de GS1: dejando aparte el dígito de control, se multiplican las cifras por 3, 1, 3, 1… empezando por la derecha y se suma todo; el dígito de control es lo que le falta a esa suma para llegar al siguiente múltiplo de 10.

Este es el cálculo al escribir 123456789012 en EAN-13:

Paso Cálculo Valor
Posiciones impares desde la derecha × 3 (2 + 0 + 8 + 6 + 4 + 2) × 3 66
Posiciones pares desde la derecha × 1 1 + 9 + 7 + 5 + 3 + 1 26
Suma 66 + 26 92
Dígito de control 100 − 92 8

Debajo de «Valor» aparece «El dígito de control 8 se calculó y añadió automáticamente.» y el código se dibuja como 1234567890128. Si escribes esos mismos 12 dígitos, 123456789012, en UPC-A, se toman como el número completo y se comprueba que el 2 final sea el dígito de control correcto. Las mismas cifras se leen de forma distinta según el formato, así que elige primero el formato.

El aviso que salta al cambiar los colores

Si el color de las barras y el del fondo se parecen demasiado en luminosidad, debajo de «Colores» aparece un aviso de que un lector puede no reconocer el código. El umbral es una relación de contraste de 3:1 entre los dos colores. Barras negras sobre fondo blanco dan 21:1; barras amarillas sobre fondo blanco, alrededor de 1,07:1, y por eso salta el aviso.

  • Con un fondo semitransparente, el contraste se calcula como si el código estuviera sobre papel blanco. Si vas a colocar un código transparente sobre una base de color, comprueba tú el contraste aunque no haya aviso.
  • El aviso de contraste solo mira la diferencia de luminosidad. Una combinación invertida, con barras claras sobre fondo oscuro, hace saltar, aunque tenga mucho contraste, un aviso aparte de que, según el lector, puede no leerse.
  • El «Color del texto» no influye en la lectura y no se revisa.

Que no haya aviso no garantiza que el código se lea. Si has cambiado los colores, pruébalo con el lector que vayas a usar.

Antes de imprimir

El lector localiza el principio y el final del código gracias al espacio en blanco que queda a cada lado, la zona de silencio (quiet zone). Puedes bajar el «Margen» hasta 0 px, pero entonces ese espacio tendrás que dejarlo tú en el diseño impreso. Como el «Margen» es un valor fijo en px, no crece cuando aumentas el «Grosor de las barras»: si engordas las barras, sube también el margen.

Con el «Grosor de las barras» en 1 px y una impresión pequeña, la tinta puede correrse y emborronar las barras finas. Para ajustar el tamaño, en lugar de estirar o encoger el PNG, usa el SVG o cambia «Grosor de las barras» y «Altura» y descarga de nuevo. Una vez impreso, léelo con un lector de verdad o con una aplicación del móvil antes de repartirlo.

Fuentes

Preguntas frecuentes

¿Puedo pegar en un producto un código hecho aquí y ponerlo a la venta?

Solo si el número está asignado oficialmente. Para distribuir un producto con un código de venta al público como EAN-13 o UPC-A hace falta un número (el prefijo de empresa) concedido por una entidad autorizada como GS1. Esta herramienta se limita a dibujar con las barras del formato estándar las cifras que escribes: ni asigna números ni los registra. Úsala para sacar la imagen de imprenta de un número que ya tienes asignado, o para usos en los que el número lo decides tú, como el inventario interno o los números de pedido.

¿Se pueden meter letras con tilde como é, hangul, caracteres chinos, kana o emojis en un código de barras?

No. De los seis formatos, el que más caracteres admite es CODE128, y no pasa de letras, cifras y signos básicos (ASCII). Basta con que el valor lleve un solo carácter como é o 日 para que aparezca «Este valor tiene caracteres que este formato no admite.» y no se genere ningún código. Para caracteres así o frases largas, usa el generador de códigos QR.

He copiado los 13 dígitos tal cual y me sale «El dígito de control no coincide».

Quiere decir que el último dígito no es el que se obtiene al calcularlo con los 12 anteriores. Lo normal es que hayas copiado mal alguno de esos dígitos o que hayas bailado dos cifras. El mensaje te enseña el último dígito que has escrito y el que sale del cálculo, pero antes de cambiarlo por el calculado coteja el número con el original cifra por cifra. Si dejas un error en los dígitos de delante y solo cuadras el último, tendrás el código de barras de otro número.

Software de código abierto utilizado: JsBarcode (MIT)

Última actualización: