O que faria com que os códigos de barras Code128 gerados a partir da biblioteca netbarcodewriter não fossem digitalizados?

StackOverflow https://stackoverflow.com//questions/20045056

  •  26-12-2019
  •  | 
  •  

Pergunta

Estou tentando usar o netbarcodewriter de https://github.com/simongh/barcodes para gerar códigos de barras code128.O código de barras gerado só pode ser digitalizado por alguns aplicativos de smartphone, mas não por qualquer scanner USB ou scanner Windows Mobile 6 robusto que tenhamos.

Por exemplo, as imagens anexadas mostram "502337700000000198" codificado de diferentes fontes, apenas 1 aplicativo de smartphone (ios) - Zbarcode pode escanear o código de barras gerado pelo netbarcodewriter 1, outros (attscanner) não podem.Nenhum dos scanners USB ou terminais robustos do Windows Ce também o verificam.

from netbarcodewriter

from raco

from itextsharp

string huid = "502337700000000198";

short w = 251;
short h = 100;
short x = 28;
Code128 code = new Code128();

var b2mp = code.Generate(huid, new BarcodeSettings { BarHeight = 65, WideWidth = w - 2 * x });
b2mp.Save(string.Format(@"c:\temp\{0}.png", huid), ImageFormat.Png);

Quando gerado por itextsharp 3 ou em sites como racoindustries.com/barcodegenerator/1d/code-128.aspx 2, todos os scanners funcionam.O código de barras do iTextSharp é muito pequeno e a propriedade BarcodeSize não pode ser definida.

Alguém já trabalhou com esta biblioteca?Além disso, alguém sabe o que esses retângulos cinza #MARKER fazem?

Qualquer ajuda será apreciada.

Foi útil?

Solução

É uma espécie de bug.Quando você cria uma nova classe Code128, ela define suas configurações padrão.para o Código 128, isso significa definir o preenchimento do módulo - o espaço entre um número codificado - como 0.

No código acima, você passa um novo objeto de configurações.Isso define o preenchimento de volta ao padrão 2, daí o espaçamento extra.

Você também está definindo o WideWidth.Isso não é usado no Code128 - ele usa apenas NarrowWidth Esta é a largura das barras e o padrão é 2.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top