Лучшая символика штрих-кода для моего приложения
// Пожалуйста, не закрывайте этот пост по субъективным причинам.
Я разрабатываю приложение winform для заполнения форм, которое генерирует файл PDF при отправке информации. Файл PDF должен содержать штрих-коды, кодирующие некоторую информацию, введенную пользователем. Пользователь печатает файл PDF, ставит на нем подпись и отправляет его по факсу. Мне нужны предложения по выбору символов штрих-кода для этого приложения. Штрих-код должен удовлетворять следующим условиям.
1)The barcode need to encode upto 120 characters
Поскольку штрих-код должен кодировать много информации, я думаю, что 2D-штрих-код будет лучше, поскольку он может хранить с очень высокой плотностью информации.
2)Only upper case alphabets and numbers need to be encoded
Хотя большинство двумерных штрих-кодов может хранить больше цифр, существуют некоторые одномерные штрих-коды, такие как код 39, которые не могут представлять все алфавиты.
3)Preferable size of barcode is 1.5 inch height and 8 inch width
Это то, что является самым сложным требованием. Я планирую разместить штрих-код под информацией, такой как идентификатор учетной записи. Так что было бы хорошо, если бы штрих-код принял форму прямоугольника, информационная емкость которого увеличивается с его шириной. Это требование подходит для 1D штрих-кодов. Кроме того, поскольку 2D штрих-коды принимают форму квадрата, много места будет потрачено с обеих сторон штрих-кода.
4)Error correcting capability
2D штрих-коды имеют лучшую возможность исправления ошибок. Только некоторые 1D штрих-коды имеют исправление ошибок с ним. Это не является обязательным требованием.
5)The barcode need to be faxed from one country to another
Штрих-код создается на PDF. PDF будет распечатан и затем должен быть отправлен по факсу. Итак, штрих-код должен иметь высокое разрешение. В противном случае я боюсь, что сканер не сможет правильно декодировать данные. Я думаю, что разрешение изображения 200 точек на дюйм достаточно для изображения штрих-кода. Есть ли проблемы при отправке факсимильных 2D штрих-кодов, так как их нужно сканировать как по горизонтали, так и по вертикали. Я слышал, что факсы имеют разное разрешение по вертикали и горизонтали. Создает ли это какие-либо проблемы при сканировании штрих-кодов.
6)Easiness to program in c# to generate barcode
В конце концов, но не в последнюю очередь, мне нужно запрограммировать сам генерацию штрих-кода на C#. Таким образом, должна быть бесплатная библиотека для того же. Aspose штрих-код является хорошим. Но это дорого.
Я сталкивался со следующими штрих-кодами. Я проверил спецификацию некоторых из этих типов. Но не смог прийти к окончательному решению. Я не могу повернуть назад, когда выберу штрих-код и начну программировать.
1D: UPC / EAN / JAN, Код 39, Код 128, Чередование 2 из 5, Codabar, Код 11, Код 93, NEC 2 из 5, Матрица 2 из 5, Триоптический код, С накоплением 1D: PDF417, Микро PDF417, Codablock A & F, составные коды 2D: матрица данных, QR-код, микро-QR-код, ацтекский код, максикод
Я думаю об использовании PDF417. Есть ли у него недостатки?
1 ответ
Я не знаю всех форматов, поэтому не могу сказать, какой из них лучший.
Некоторые из упомянутых вами штрих-кодов 1D (UPC/EAN) поддерживают только небольшое количество цифровых символов. Я знаю, что Код 128 поддерживает буквенно-цифровые значения переменной длины, так что, вероятно, это хороший 1D кандидат.
Некоторые считыватели штрих-кодов не поддерживают двухмерные штрих-коды, поэтому обычно используется 1D.
В 2D вы должны увидеть, есть ли символы, которые не требуют штрих-кода в виде квадрата, потому что это ограничит ваш максимальный размер до 1,5 на 1,5 дюйма.
Существует несколько веб-сайтов, которые позволяют создавать штрих-коды в виде изображений - возможно, вам просто нужно создать PDF-файл, содержащий их, и отправить их по факсу, чтобы увидеть, что происходит.
Я не знаю каких-либо бесплатных библиотек для их рендеринга; Существуют также шрифты, которые позволяют создавать 1D штрих-коды, и вы можете встроить эти шрифты в ваше приложение winforms.
РЕДАКТИРОВАТЬ: 200 точек на дюйм на 8x1,5 дюйма даст вам 1600 точек по горизонтали и 300 точек по вертикали для работы. Штрих-код code128 с шириной полосы в 1 пиксель получился бы с разрешением менее 1400 точек.
На странице Википедии для QR есть пример, который занимает до 174 символов, имеет размер 57x57 и высокую коррекцию ошибок. Если я не ошибаюсь, каждая точка может быть представлена 5x5 пикселей в 200 точек на дюйм.