Gerador de código de barras Code 39

O Code 39 é a simbologia que se escolhe quando ninguém precisa aprovar a sua numeração. Não há prefixo para licenciar nem autoridade onde se registrar — por isso ele sobreviveu a várias gerações de formatos melhores em almoxarifados, oficinas e arquivos. Seu alfabeto tem exatamente 43 caracteres: os dez dígitos, as vinte e seis maiúsculas, o espaço e seis sinais — menos, ponto, cifrão, barra, mais e porcentagem. Cada caractere tem nove elementos de largura, três deles barras ou espaços largos e seis estreitos, então o leitor decide cada elemento com uma única pergunta binária. Essa é a fonte da sua robustez e também do seu custo, que é a largura.

Aparência
Tamanho
Legenda
Posição da legenda
Alinhamento da legenda
Cores

442 × 237 px no PNG

Unidades

Especificação

Conjunto de caracteres
letras e dígitos
Comprimento
de 1 a 43 caracteres
Dígito verificador
esta simbologia não usa

Onde é usado

  • Plaquetas de ativos em equipamentos, onde o número vem do seu próprio registro de ativo fixo e nada significa fora da empresa
  • Etiquetas de oficina e laboratório lidas por scanners fixos instalados anos atrás e configurados uma vez, onde trocar a simbologia significa revisitar cada leitor
  • Formulários de papel, ordens de serviço e capas de pasta impressos numa laser de escritório junto com o texto a que pertencem
  • Crachás, tíquetes de portaria e números de documento internos que precisam continuar legíveis depois de dobrados no bolso

Como se compara

O Code 128 é a comparação direta, e o jeito honesto de fazê-la é em módulos, porque é isso que está em jogo. Um caractere de Code 39 custa dezesseis módulos — nove elementos mais o vão estreito que o separa do seguinte — contra onze de um caractere Code 128 no conjunto de letras e dígitos. Some os padrões de início e fim e uma plaqueta de dez caracteres dá 192 módulos de Code 39 contra 145 de Code 128: cerca de um terço mais larga. Em dígitos puros a diferença deixa de ser questão de grau: o Code 128 muda para um conjunto numérico que empacota dois dígitos em onze módulos, cinco e meio por dígito, então os mesmos dez dígitos ocupam 192 módulos no Code 39 e 90 no Code 128. O que essa largura compra é a ausência de maquinaria. O Code 39 não tem caractere de verificação calculado para errar, nem conjuntos de código para alternar, e cada caractere carrega forma fixa — exatamente três elementos largos em nove —, então um defeito de impressão invalida o caractere em vez de transformá-lo em outro válido. O Code 128 vence em largura, alfabeto e verificação embutida; o Code 39 é o que continua funcionando quando nada da instalação está sob seu controle.

Erros comuns

  • Digitar os asteriscos. O Code 39 usa o asterisco como caractere de início e fim, e como as fontes de código de barras obrigam a digitá-los, metade da internet diz que um valor Code 39 deve vir embrulhado neles. Aqui não: o codificador os acrescenta sozinho e os imprime na linha legível, então um símbolo feito de CODE39 lê *CODE39* embaixo. Cole *CODE39* no campo e a linha de status responde que o asterisco não é permitido na posição 1 — nenhum símbolo é desenhado e os botões de download ficam apagados.
  • Mandar em minúsculas. O alfabeto não tem minúscula nenhuma, então um valor copiado de um banco em caixa mista é rejeitado na primeira minúscula, com a posição apontada. Existe uma convenção chamada Full ASCII Code 39 que expressa minúsculas e sinais como pares de dois caracteres sobre as marcas de deslocamento, mas ela só decodifica num leitor configurado expressamente para esperá-la, e este gerador não monta esses pares. Se o valor precisa manter a caixa, a simbologia é o Code 128.
  • Supor que o caractere de verificação já está lá dentro. O Code 39 torna opcional seu verificador mod-43, e este gerador o omite — a tabela de especificação desta página diz isso com todas as letras, em dígito verificador. Isso importa quando o sistema recebedor foi configurado para esperá-lo: ele vai decepar seu último caractere e ler o resto. O conserto é aritmética do seu lado, curta o bastante para uma coluna de planilha. Cada caractere vale conforme a ordem do alfabeto: 0 a 9 valem 0 a 9, A a Z valem 10 a 35, depois menos 36, ponto 37, espaço 38, cifrão 39, barra 40, mais 41 e porcentagem 42. Some os valores da sua cadeia, tome o resto módulo 43, e o caractere que guarda esse resto é o verificador. CODE39 soma 12 + 24 + 13 + 14 + 3 + 9 = 75; 75 módulo 43 é 32; 32 é W, então o valor a digitar é CODE39W. O campo aceita, porque os 43 verificadores possíveis já estão no alfabeto admitido.
  • Deixar a largura ditar o módulo em vez do contrário. Dezesseis módulos por caractere somam rápido: dez caracteres mais início e fim são 192 módulos, e espremidos em 40 mm de etiqueta o elemento estreito fica em 0,208 mm. Uma laser de 300 dpi põe um ponto de 0,085 mm, então o elemento estreito tem dois pontos e meio e cada barra arredonda para um inteiro diferente. Decida primeiro o elemento estreito — três pontos é um piso defensável —, veja então quantos caracteres cabem, e encurte o esquema de numeração se não couberem.
  • Reconstruir o símbolo com razão largo-estreito mais apertada. A razão entre elemento largo e estreito não é fixada num único valor: a ISO/IEC 16388 a deixa entre 2:1 e 3:1 enquanto o elemento estreito tiver 0,508 mm ou mais, e sobe o piso para 2,25:1 assim que ele desce de 0,508 mm. Este gerador desenha 3:1. Regenere o mesmo valor com uma fonte a 2:1 e ele cabe em menos espaço — parece ganho, até a impressora ou o leitor terem um dia ruim: a largura extra é exatamente a margem que fez você escolher o Code 39.

Perguntas frequentes

Preciso registrar algo para usar o Code 39?
Não, e esse é o ponto todo. Não há prefixo de empresa, órgão emissor nem anuidade atrás de um valor Code 39: a numeração é sua para definir. Essa liberdade é também sua fronteira: como ninguém garante que seu número é único, ele nada significa fora dos seus próprios sistemas. No momento em que o código precisa ser entendido por uma loja, um distribuidor ou um marketplace, a simbologia deixa de ser a pergunta e o número passa a ser — e o caminho é EAN-13, UPC-A ou ITF-14.
Code 39 ou Code 128?
Code 128, a menos que algo específico impeça. Ele é cerca de um terço mais estreito em letras e o dobro mais compacto em valores só de dígitos, e aceita minúsculas e sinais que o Code 39 não expressa. O Code 39 ganha seu lugar em três situações: os leitores do chão já estão configurados para ele e reconfigurá-los é um projeto, a impressão é áspera o bastante para barras largas valerem o espaço, ou o símbolo precisa sair de algo incapaz de calcular um verificador.
Posso pôr sublinhado, vírgula ou parênteses no valor?
Não. O conjunto aceito são os 43 caracteres da simbologia e nada mais: dígitos, A a Z maiúsculas, o espaço, e menos, ponto, cifrão, barra, mais e porcentagem. O que estiver fora é recusado, com o caractere infrator e a posição nomeados na linha de status. Números de inventário herdados de outros sistemas são a fonte usual de problema: sublinhado e parênteses são comuns neles e nenhum existe no Code 39. Substitua por menos ou ponto, que o alfabeto tem.
Qual o comprimento máximo do valor?
Este campo aceita de 1 a 43 caracteres, e o que passar é rejeitado por comprimento. Bem antes desse teto a etiqueta vira o limite real: a dezesseis módulos por caractere, um valor de 30 são 512 módulos com início e fim, e numa etiqueta de 100 mm isso deixa o elemento estreito abaixo de 0,2 mm. Se um valor está alongando, refazer o esquema de numeração sai mais barato que mudar a linha inteira para etiqueta maior.
Code 3 of 9 é outra simbologia?
É a mesma com outro nome. Code 39, Code 3 of 9, USS-39 e a simbologia LOGMARS da logística de defesa dos Estados Unidos descrevem a mesma codificação — o nome Code 3 of 9 vem da estrutura: três elementos largos em nove por caractere. Se uma especificação que você recebeu cita qualquer um desses, este gerador o produz.