Где я могу найти “справочные штрих-коды” для проверки выходных данных библиотеки штрих-кодов?
Вопрос
Этот вопрос не о "лучшем" штрих - код рекомендация библиотеки, мы используем различные продукты на разных платформах, и нам нужен простой способ проверить правильность данного штрих-кода (в соответствии с его спецификацией).
Мы обнаружили случаи, когда штрих-код отображается по-разному в разных библиотеках штрих-кодов и бесплатные онлайн генераторы штрих-кодов в интернете.Например, новая версия библиотеки отчетов Delphi выводит нечисловые символы в Code128 как '0' или просто пропускает их в текстовой области.Прежде чем мы выполним миграцию, мы хотим проверить, вызваны ли эти изменения неисправной реализацией в новой библиотеке, чтобы мы могли сообщить об этом автору как об ошибке.
Нам в основном нужно Код128 и UCC/EAN-128 с подкодами A/B/C.
Онлайн- ресурсы, которые я проверил до сих пор, являются:
- IDAutomation.com (отображает ABC123 как 0123 с кодом 128-C)
- Morovia.com
- Штрих - кодыinc (не допускает запятой)
- TEC-ЭТО
Они также показывают разные результаты, например, в поддержке таких символов, как запятая или знаки плюс, по крайней мере, в удобочитаемом тексте.
Решение
Для Code128 нет ни одного правильного ответа.Если вы используете Code128-A, вы можете получить результат, отличный от Code128-C.Под результатом я подразумеваю, как это выглядит.Возьмем в качестве примера "803150".В Code128-A вам понадобится 6 символов (+ start, контрольная сумма, stop) для представления этого числа.Code128-C состоит только из цифр, поэтому вы можете сжать две цифры в один символ.Следовательно, вам понадобится всего 3 символа (+ начало, контрольная сумма, остановка), чтобы представить одно и то же число.Штрих-коды будут выглядеть по-разному (в данном случае A будет длиннее), но если вы отсканируете их оба, то получите правильный номер.
Кроме того, Code128 не обязательно должен быть просто A, B или C.На самом деле вы можете комбинировать различные подмножества.Это обычное явление для таких случаев, как "US123457890", где для "US" используется Код128-A или B, а для остальных цифр используется Код128-C.Иногда это называют Code-128 Auto, или просто Code-128.В результате получается "сжатый" штрих-код с точки зрения ширины.Вы могли бы представить те же данные с помощью A / B, но опять же это дало бы вам более длинный штрих-код.
Возьмите два онлайн-генератора:
Я рекомендую первый вариант, где вы можете выбирать между Auto / A / B / C.Вот пример изображения, иллюстрирующего различия:
При IDAutomation значение Auto используется по умолчанию, в то время как A используется по умолчанию для штрих-кодов-Inc.Оба верны, вам просто нужно быть осторожным с тем, какое подмножество вы выбрали при сравнении выходных данных.Я также рекомендую считыватель штрих-кодов для использования при разработке для тестирования выходных данных.Кроме того, смотрите эта страница для сравнения различных подмножеств со значениями ASCII.Я также нахожу grandzebu.net полезный, в котором также есть бесплатный шрифт Code128, который вы можете использовать.
Похоже, что ваша библиотека Delphi всегда использует Code128-C, поскольку представлять числа можно только в этом подмножестве.
Другие советы
Почему бы просто не отсканировать их и не посмотреть, что получится в ответ?