Что может привести к тому, что штрих-коды Code128, сгенерированные из библиотеки netbarcodewriter, не будут сканироваться?

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

  •  26-12-2019
  •  | 
  •  

Вопрос

Я пытаюсь использовать netbarcodewriter из https://github.com/simongh/barcodes для генерации штрих-кодов code128.Сгенерированный штрих-код можно сканировать только с помощью некоторых приложений для смартфонов, но не с помощью имеющихся у нас USB-сканеров или защищенных сканеров Windows Mobile 6.

Например, на прикрепленных изображениях показано «502337700000000198», закодированное из разных источников, только 1 приложение для смартфона (ios) — Zbarcode может сканировать штрих-код, сгенерированный netbarcodewriter. 1, другие (attscanner) не могут.Ни один из USB-сканеров или защищенных терминалов Windows ce также не сканирует его.

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);

При создании itextsharp 3 или на таких сайтах, как racoindustries.com/barcodegenerator/1d/code-128.aspx. 2, все сканеры работают.Штрих-код iTextSharp слишком мал, и свойство BarcodeSize невозможно установить.

Кто-нибудь работал с этой библиотекой?Кроме того, кто-нибудь знает, что делают эти серые прямоугольники #MARKER?

Любая помощь будет оценена по достоинству.

Это было полезно?

Решение

Это своего рода ошибка.Когда вы создаете новый класс Code128, он устанавливает настройки по умолчанию.для кода 128 это означает установку заполнения модуля (пробела между закодированными числами) на 0.

В приведенном выше коде вы передаете новый объект настроек.Это возвращает отступу значение по умолчанию, равное 2, отсюда и дополнительный интервал.

Вы также устанавливаете WideWidth.Это не используется в Code128 — он использует только NarrowWidth Это ширина полос, по умолчанию равна 2.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top