ГОСТ ISO/IEC 15438-2018. Межгосударственный стандарт. Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация символики штрихового кода PDF417
5.9 Определение формата символа
Матрицу символа PDF417, общий размер и форму символа определяют следующие факторы:
a) ширина модуля и коэффициент сжатия;
b) число строк и столбцов в матрице символа.
При создании символа PDF417 эти параметры выбирают сочетанием установок пользователя, ограничений, определяемых применением, и установок по умолчанию. Процесс выбора может повторяться до получения пользователем требуемого формата.
5.9.1 Определение коэффициента сжатия модуля
Коэффициент сжатия печатаемого модуля (aspect ratio of the module) определяют два размера:
- X - требуемая ширина самого узкого штриха и самого узкого пробела;
- Y - требуемая высота каждой строки.
Эти размеры определяются пользователем или нормативными документами, регламентирующими применение штрихового кода. Основным фактором, определяющим эти параметры, является разрешение систем печати и считывания, используемых в рамках конкретного применения (5.14).
5.9.2 Определение матрицы строк и столбцов символа
Для определения матрицы символа, т.е. числа строк r и числа столбцов c, учитывают следующие факторы:
- объем и тип данных, подлежащих кодированию;
- основные правила символики, определяющие, например, предельное число строк и столбцов (5.2.1 и 5.2.2).
- фактическое пространство для нанесения символа;
- более длинные строки приводят к уменьшенной вспомогательной части символа (включающей знаки СТАРТ и СТОП, индикаторы строки и области свободных зон);
- длина строки (включая свободные зоны) должна быть меньше длины линии сканирования, регламентируемой или подразумеваемой в рамках применения;
- тип сканера, который может определять общий коэффициент сжатия символа;
- выбранный уровень коррекции ошибок.
Во многих применениях допустимая ширина символа является первичным ограничением и матрицу символа можно определить фиксированным числом столбцов. В приложении O приведены рекомендации по определению матрицы символа.
После кодирования исходных данных с использованием выбранных режимов уплотнения известно число исходных кодовых слов данных m (до дополнения дескриптором длины символа и любыми кодовыми словами-заполнителями). После выбора числа строк и столбцов и уровня коррекции ошибок общее число кодовых слов данных n вычисляется по формуле:
n = c·r - k,
где c, k, n и r соответствуют определениям, приведенным в 4.1.
В матрице могут возникнуть ситуации, когда для достижения необходимого числа строк и столбцов требуется использование кодовых слов-заполнителей (условно используется кодовое слово со значением 900). Такая ситуация может произойти при
n > m + 1,
где m и n соответствуют определениям, приведенным в 4.1.
Дескриптору длины символа следует назначить значение n, определенное выше.
Таким образом
dn - 1 = n = c·r - k.
Требуемое число кодовых слов-заполнителей равно (n - m) - 1.
Кодовые слова-заполнители должны иметь значение 900 и размещаться в позициях младших разрядов последовательности кодовых слов данных, т.е. справа от исходного кодового слова данных в позиции самого младшего разряда (но до управляющего блока Макро PDF417, при наличии). Пример такого преобразования приведен ниже. Независимо от включения дескриптора длины символа и каких-либо кодовых слов-заполнителей последовательность кодовых слов должна оставаться идентичной последовательности, изначально произведенной при кодировании данных.
Пример - Пусть m = 246, c = 12, r = 24 и k = 32, тогда n = (c·r) - k = (12·24) - 32 = 256.
Примечание - Обозначения соответствуют указанным выше.
Значение дескриптора длины символа n равно 256.
Число кодовых слов-заполнителей равно (n - m) - 1 = 256 - 246 - 1 = 9.
В настоящем примере кодовые слова данных (до кодовых слов-заполнителей) начинаются с функции фиксации режима цифрового уплотнения (кодовое слово 902) и заканчиваются кодовым словом со значением 423. Все кодовые слова-заполнители являются кодовыми словами 900. Дополнение дескриптором длины символа и кодовыми словами-заполнителями представлено ниже:
Исходная последовательность кодовых слов данных |
| dm-1 | ... | d0 |
|
|
|
Значения кодовых слов |
| 902 | ... | 423 |
|
|
|
|
|
|
|
|
|
|
|
Дополненная последовательность кодовых слов данных | dn-1 | dn-2 | ... | d9 | d8 | ... | d0 |
Значения кодовых слов | 256 | 902 | ... | 423 | 900 | ... | 900 |
