Как хранить больше данных в штрих-кодах PDF417? - PullRequest
0 голосов
/ 02 февраля 2019

В последнее время я получаю штрих-коды, и я решил отсканировать свои водительские права (PDF417), чтобы увидеть, как были закодированы все данные.

Я обнаружил, что штрих-код в моей лицензии кодировал ~ 3000 символов,в то время как документация (согласно нескольким источникам, которые я читал) говорит, что максимум 1800 символов.

Как DMV и другие организации хранят так много данных в штрих-кодах PDF417, когда я не могу их сохранитьценность более 1000 символов?

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

В спецификации ISO 15438 для символики PDF417, раздел 5.1.1.c: 925 - максимальное количество кодовых слов данных при уровне исправления ошибок 0, что не рекомендуется.

При минимальном рекомендуемом уровне исправления ошибок(уровень 5 в данном случае), который зависит от количества кодовых слов данных, вы видите максимум 863 кодовых слова данных с 64 кодовыми словами, используемыми для исправления ошибок.

Режим сжатия текста дает нам 1726 символов.Режим двоичного уплотнения дает нам 1108 байт.Режим числового сжатия дает нам колоссальные 2528 чисел.

Три режима можно переключать в любом месте символа, что позволяет оптимизировать числовые поля, если они достаточно длинные, чтобы оправдать стоимость переключения (не менее 6числа в ряд).

Я только что отсканировал файл pdf417 на обороте водительских прав, и в нем было 348 байт (символов ASCII).Мне трудно разобраться с 3000 символами.

Вполне возможно закодировать более 1800 символов, если вы сможете свободно использовать кодовое слово 902 для защелки сжатия Numeric, однако.

0 голосов
/ 03 февраля 2019

Согласно Википедии, PDF417 может хранить максимум 90 строк, а каждая строка максимум 30 кодовых слов.

Тогда 5 кодовых слов могут кодировать 6 байтов, или 44 цифры с 15 кодовыми словами, или 1 кодовое слово можетзакодируйте 2 "буквы".

Таким образом, у вас есть максимум: 2700 кодовых слов или 3200 байтов, или 7920 цифр, или 5400 "букв".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...