Gerar código de barras
O Gerador de código de barras codifica um valor como Code 128, EAN-13, EAN-8, UPC-A, Code 39 ou ITF-14 e entrega um SVG ou PNG. Os codificadores — dígitos verificadores, troca de conjuntos do Code 128, codificação de paridade do décimo terceiro dígito do EAN — todos rodam no seu navegador, e a saída traz as zonas de silêncio e as barras de guarda que as normas exigem, o que decide se um leitor lê o código.
Tipo de código de barras
Etiquetas de envio, ativos e logística GS1-128; opção geral.
Como funciona o Gerar código de barras?
Um código de barras é um número escrito na largura de barras e espaços, e a codificação é específica de cada simbologia. A ferramenta escolhe a certa para o que você está criando e recusa as combinações que não podem funcionar — não dá para colocar letras em um EAN, e a ferramenta avisa em vez de descartá-las em silêncio.
Code 128, e por que ele é o padrão
O Code 128 codifica todo o ASCII em três conjuntos de caracteres que se sobrepõem, e alternar entre eles no meio do símbolo faz parte da codificação. O conjunto C é o motivo de ele ser tão eficiente para números: empacota dois dígitos em um caractere de símbolo, então um valor de 20 dígitos ocupa 10 caracteres em vez de 20. Este codificador muda para o conjunto C quando uma sequência de dígitos compensa — seis no início do valor, quatro no meio — que é o ponto de equilíbrio em que o caractere de troca se paga.
O décimo terceiro dígito de um EAN-13 não é uma barra
O EAN-13 tem 95 módulos e eles codificam doze dígitos, não treze. O primeiro dígito é transportado pelo *padrão de paridade* dos seis da esquerda: cada um deles é codificado com paridade ímpar ou par, e qual dos seis padrões possíveis aparece é o que soletra o dígito inicial. É uma peça genuinamente engenhosa do design dos anos 1970 — fez do EAN-13 um superconjunto do UPC-A de 12 dígitos já existente sem mudar a largura do símbolo — e é a parte em que um codificador feito à mão quase sempre erra.
Dígitos verificadores
EAN, UPC e ITF-14 usam o mesmo esquema de módulo 10: pese os dígitos alternadamente por 3 e 1, some tudo, e o dígito verificador é o que leva o total a um múltiplo de dez. Digite os doze dígitos de um EAN-13 e o décimo terceiro é calculado e exibido — se você já o tem, a ferramenta confere o seu em vez de substituí-lo, e avisa se ele não bater. O Code 128 tem o próprio checksum ponderado, que faz parte do símbolo e nunca é impresso.
Zonas de silêncio não são margem
O espaço em branco dos dois lados das barras faz parte do símbolo, e é a parte dele mais frequentemente destruída. Um leitor o usa para descobrir onde o código começa; com um logotipo, uma dobra ou a borda de uma caixa dentro dele, as taxas de leitura despencam. As normas definem a zona por simbologia — 11 módulos para o EAN-13, 10 para o Code 128 — e ela vem incluída em tudo que é baixado aqui, que é exatamente por que o arquivo tem “espaço em branco demais” ao redor. Não o recorte.
Por que a saída é SVG por padrão
Porque um código de barras é impresso muito mais vezes do que exibido, e uma imagem raster na resolução errada é o outro motivo comum de falha do símbolo. As barras caem sobre pixels fracionários do dispositivo, a impressora borra as bordas, e as larguras que o leitor mede deixam de ser as que você codificou. A saída vetorial não tem resolução para errar, e o SVG baixado é dimensionado em milímetros, de modo que um pipeline de impressão o reproduz na largura de módulo que você escolheu.
Um valor e uma simbologia
EAN-13 590123412345
Um símbolo escaneável
5901234123457
↑ check digit
quiet zone 11 modules each side
modules 95
width 30.1mm at X = 0.264mmQuais opções e casos-limite o Gerar código de barras suporta?
| Parâmetro | Tipo | Padrão | Comportamento e casos-limite |
|---|---|---|---|
| Code 128 | Qualquer texto ASCII, qualquer tamanho | 10 módulos | Etiquetas de remessa, tags de ativos, logística GS1-128 — a escolha de uso geral |
| EAN-13 | 12 dígitos (o 13º é calculado) | 11 módulos | Produtos varejistas fora da América do Norte |
| EAN-8 | 7 dígitos (o 8º é calculado) | 7 módulos | Pacotes pequenos de varejo sem espaço para um EAN-13 completo |
| UPC-A | 11 dígitos (o 12º é calculado) | 9 módulos | Produtos varejistas nos Estados Unidos e Canadá |
| Code 39 | A–Z, 0–9, espaço e - . $ / + % | 10 módulos | Logística de defesa, automotiva e de saúde; leitores mais antigos não leem nada além disso |
| ITF-14 | 13 dígitos (o 14º é calculado) | 10 módulos | Caixas externas e paletes — impressas em cartão ondulado, onde as barras finas não funcionam |
| Largura do módulo (X) | mm | 0.33 | A largura da barra mais estreita, e o número que define todas as outras. Mínimos: 0.264mm para EAN e UPC de varejo, 0.495mm para ITF-14 em cartão ondulado. |
| Zona de silêncio | módulos | incluso | Espaço em branco que faz parte do símbolo, e não margem ao seu redor. Recortá-lo é a causa mais comum pela qual um código impresso para de ser lido. |
Perguntas frequentes
Que tipo de código de barras devo usar?
Code 128 para qualquer uso interno — etiquetas de envio, tags de patrimônio, localizações no armazém — porque aceita qualquer texto ASCII de qualquer tamanho e empacota dígitos dois por caractere. EAN-13 para produto de varejo vendido fora da América do Norte, UPC-A dentro dela, e ambos exigem um prefixo de empresa GS1 que você precisa comprar; não dá para inventar o número. ITF-14 para a caixa externa ou o pallet. Code 39 só quando o leitor ou o setor exigir: é volumoso e codifica um conjunto restrito de caracteres, mas leitores muito antigos não lidam com mais nada.
Posso criar meu próprio EAN-13 para um produto que vendo?
Você pode gerar um símbolo válido aqui, mas o número em si precisa ser alocado. Um EAN-13 começa com um prefixo de empresa GS1 emitido para o seu negócio, e os varejistas o verificam no registro da GS1 — um número inventado codifica, escaneia e depois falha no momento em que importa. Para controle de estoque interno, em que nada sai do seu próprio sistema, Code 128 com um esquema seu é a resposta honesta e não custa nada.
Como o dígito verificador é calculado?
Para EAN, UPC e ITF-14 é módulo 10: pegue os dígitos, pese-os alternadamente por 3 e 1 a partir da direita, some tudo, e o dígito verificador é a quantidade que leva o total ao próximo múltiplo de dez. Digite aqui os doze dígitos de um EAN-13 e o décimo terceiro aparece; cole os treze e esta ferramenta confere o seu em vez de sobrescrevê-lo. O Code 128 tem um checksum ponderado diferente, codificado no símbolo e nunca impresso embaixo.
Por que meu código de barras impresso não escaneia?
Três causas, em ordem de frequência. A zona de silêncio foi recortada ou algo foi colocado dentro dela — esse espaço em branco faz parte do símbolo. A largura do módulo está abaixo do mínimo, e o espalhamento de tinta fecha os espaços; EAN e UPC de varejo precisam de 0.264mm e ITF-14 em papelão ondulado precisa de 0.495mm. Ou foi impresso a partir de uma imagem raster de baixa resolução, em que as bordas das barras não caem em pixels inteiros. Baixe o SVG, mantenha o espaço em branco e confira a largura em milímetros exibida nesta página.
Um código de barras pode guardar uma URL ou um número de telefone?
O Code 128 pode conter qualquer texto ASCII, então uma URL codifica — mas um código de barras linear é um mau veículo para ela. Ele fica muito largo muito rápido, e os leitores que aproveitam uma URL de fato são as câmeras de celular, que leem códigos QR muito melhor do que leem símbolos 1D. Se o destino é um celular, use o gerador de QR code deste site. Use um código de barras quando um leitor dedicado for fazer a leitura.
Algo é enviado quando eu gero um código de barras?
Não. Os codificadores rodam nesta aba, e o SVG e o PNG são produzidos aqui também. Isso importa mais do que parece, justamente nesta ferramenta: os valores que as pessoas codificam são números de pedido, números de série e tags de patrimônio internas, e mandar isso para o servidor de um estranho para desenhar uns retângulos é um mau negócio. A Content-Security-Policy do site define connect-src 'self', então o navegador bloquearia um envio mesmo que algo tentasse.