ГОСТ Р 51294.9-2002
(ИСО/МЭК 15438-2001)
Группа П85
ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Автоматическая идентификация
КОДИРОВАНИЕ ШТРИХОВОЕ
Спецификации символики PDF417 (ПДФ417)
Automatic identification. Bar coding.
Symbology specifications PDF417
ОКС 35.040
ОКСТУ 4002
Дата введения 2003-01-01
Предисловие
1 РАЗРАБОТАН Ассоциацией автоматической идентификации ЮНИСКАН/EAN РОССИЯ/AIM РОССИЯ совместно с ЗАО "Фирма ПИЛОТ"
ВНЕСЕН Техническим комитетом по стандартизации ТК 355 "Автоматическая идентификация"
2 ПРИНЯТ И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 26 августа 2002 г. N 314-ст
3 Настоящий стандарт представляет собой аутентичный текст международного стандарта ИСО/МЭК 15438-2001 "Информационная технология. Технологии автоматической идентификации и сбора данных. Спецификации символики штрихового кода ПДФ417" (ISO/IEC 15438-2001 "Information Technology - Automatic Identification and Data Capture - Bar code symbology specifications - РDF417"), за исключением раздела "Библиография", и приложений V, W, X. Дополнительные положения выделены курсивом.
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им межгосударственные стандарты, сведения о которых приведены в дополнительном приложении W, и государственные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении Х
4 ВВЕДЕН ВПЕРВЫЕ
Введение
Введение
Технология штрихового кодирования основана на распознавании комбинаций штрихов и пробелов определенных размеров. Существуют множество методов кодирования информации в формате штрихового кода, именуемых символиками, и множество правил перевода знаков в комбинации штрихов и пробелов и других важных параметров, именуемых спецификациями символики.
Производителям оборудования для штрихового кодирования и пользователям технологии штрихового кодирования необходим общедоступный стандарт спецификаций символики, к которому можно обращаться при разработке оборудования или стандартов применений. Символика, представленная в данном стандарте, является общественным достоянием и не подлежит ограничениям для пользователей, лицензированию и взиманию взносов.
1 Область применения
Настоящий стандарт устанавливает:
- требования к символике штрихового кода PDF-417;
- показатели символики PDF-417, кодирование знаков данных, форматы символов, размеры, правила коррекции ошибки, алгоритм декодирования и совокупность параметров применения.
2 Нормативные ссылки
1 В настоящем стандарте использованы ссылки на следующие стандарты*:
________________
* Соответствие межгосударственных стандартов и государственных стандартов Российской Федерации международным стандартам приведено в приложениях W и X. Международные спецификации, указанные в разделе 2 ИСО/МЭК 15438, перенесены в раздел "Библиография" ([1] и [5]).
ИСО 646-91 Информационная технология - 7-битный кодированный набор знаков ИСО для обмена информацией
ИСО 8859-1-98 Обработка информации. Наборы 8-битных однобайтовых кодированных графических символов. Часть 1. Латинский алфавит N 1
ИСО/МЭК 15416-2000 "Информационная технология. Технологии автоматической идентификации и сбора данных. Спецификации испытаний качества печати штриховых кодов - Линейные символы"
ЕН 796-96 Штриховое кодирование. Идентификаторы символик
ЕН 1556-98 Штриховое кодирование. Терминология
3 Определения, обозначения и сокращения
3.1 Определения
Применительно к настоящему стандарту использованы следующие термины и определения, данные в ЕН 1556:
Алгоритм (algorithm), стандарт применения (application standard), версия КОИ-7 (ASCII), автораспознавание (autodiscrimination), штрих (bar), штриховой код (bar code), двунаправленность декодирования (bi-directional), двоичный (binary), бит (bit), кодовое слово (codeword), столбец символа штрихового кода (column), непрерывный штриховой код (continuous code), знак данных (data character), кодовое слово данных (data codeword), уплотнение данных (data compaction), поле данных символа (data region), алгоритм декодирования (decode algorithm), декодер (decoder), элемент символа штрихового кода (element), кодирование (encode), уровень коррекции ошибок (error correction level), визуальное представление знаков (human readable character), начальные нули (leading zeros), линейная символика (linear symbology), модуль (module), расчет "по модулю" контрольного знака (modulo), многострочная символика (multi-row symbology), n, k символика (n, k symbology), набор цифровых знаков (numeric), дополнение символа штрихового кода (overhead), знак-заполнитель (pad character), кодовое слово-заполнитель (pad codeword), свободная зона (quiet zone), рекомендуемый алгоритм декодирования (reference decode algorithm), строка символа штрихового кода (row), сканер (scanner), самоконтроль знака символа штрихового кода (self-checking), пробел символа штрихового кода (space), знак СТАРТ (start character), знак СТОП (stop character), коэффициент сжатия символа штрихового кода (symbol aspect ratio), знак символа (symbol character), символика штрихового кода (symbology), идентификатор символики (symbology identifier), длина символа штрихового кода (symbol width), размер
В настоящем стандарте применяют также следующие термины с соответствующими определениями:
3.1.1 модель базового канала (Basic Channel Model): Стандартная система кодирования и передачи данных штрихового кода, в которой с выхода декодера поступают байты данных сообщения, но не передается никакой управляющей информации о сообщении.
Примечание - В соответствии с данной моделью декодер работает в режиме базового канала
3.1.2 последовательность штрихов и пробелов (bar-space sequence): Последовательность, представляющая ширину элементов знака символа в модулях
3.1.3 кластер (cluster): Одно из трех подмножеств самостоятельных знаков символа PDF417, в котором знаки символа соответствуют особым структурным правилам, используемым при декодировании символики
3.1.4 режим уплотнения (compaction mode): Наименование каждого из трех алгоритмов уплотнения данных PDF417: режим текстового уплотнения (Text Compaction mode), режим цифрового уплотнения (Numeric Compaction mode) и режим байтового уплотнения (Byte Compaction mode), эффективно преобразующих 8-битные байты данных в кодовые слова PDF417
3.1.5 кодовое слово коррекции ошибок (Error correction codeword): Кодовое слово в символе, которое кодирует значение, получаемое из алгоритма исправления ошибок кодовых слов для декодирования обнаруженных ошибок и их исправления в зависимости от уровня коррекции ошибок
3.1.6 интерпретация расширенного канала (Extended Channel Interpretation): Процедура, применяемая в некоторых символиках, включая PDF417, для точной замены интерпретации по умолчанию иной интерпретацией.
Примечание - Интерпретация, изначально предназначенная для формирования символа, может быть восстановлена после декодирования сканированного символа для воссоздания сообщения данных в его исходном формате
3.1.7 модель расширенного канала (Extended Channel Model): Система кодирования и передачи байтов данных сообщения и управляющей информации о сообщении, в которой управляющая информация передается с использованием управляющей последовательности интерпретации расширенного канала.
Примечание - Декодер, соответствующий данной модели, работает в режиме расширенного канала
3.1.8 функциональное кодовое слово (function codeword): Кодовое слово в символике, которое инициирует определенную операцию в символике.
Примечание - Функциональное кодовое слово используется, например, для перехода между кодированными наборами данных, вызова схемы уплотнения, программирования считывающего устройства и вызова интерпретаций расширенного канала
3.1.9 идентификатор глобальной метки (Global Label Identifier): Процедура в рамках символики PDF417, предназначенная для замены интерпретации по умолчанию иной интерпретацией.
Примечания:
1 Назначение указанной процедуры идентично назначению интерпретации расширенного канала.
2 Связанная с символикой система идентификаторов глобальных меток предшествовала независимой от символики системе интерпретации расширенного канала
3.1.10 Макро PDF417 (Macro PDF417): Процедура в символике PDF417 по логической передаче данных из компьютерного файла в комплект связанных символов PDF417.
Примечания:
1 Эта процедура значительно расширяет емкость данных по сравнению с емкостью единичного символа.
2 Настоящая процедура подобна параметру структурированного соединения, применяемому в других символиках
3.1.11 кодовое слово фиксации в режиме (Mode Latch codeword): Кодовое слово, которое используется для перехода из одного режима в другой, который будет действовать до применения кодового слова фиксации в режиме или регистра в режиме, либо до окончания символа
3.1.12 кодовое слово регистра в режиме (Mode Shift codeword): Кодовое слово, которое используется для перехода из одного режима в другой только для одного кодового слова, после чего режим кодирования возвращается к исходному
3.1.13 кодовое слово индикатора строки (Row Indicator codeword): Кодовое слово PDF417, примыкающее к знаку СТАРТ или знаку СТОП в строке, которое кодирует информацию о структуре символа PDF417: идентификацию строки, общее количество строк и столбцов и уровень коррекции ошибки
3.1.14 кодовое слово дескриптора длины символа (Symbol Length Descriptor): Кодовое слово в символе PDF417, кодирующее общее количество кодовых слов данных в символе.
Примечание - Дескриптор длины символа всегда должен быть первым кодовым словом в символе PDF417
3.2 Обозначения математических символов и операций
В настоящем стандарте используются следующие обозначения математических символов, которые согласуются с наиболее общим использованием системы счисления:
________________
* Вероятна ошибка оригинала. Следует читать
В настоящем стандарте используют также следующие обозначения для математических операций:
div - оператор целоисчисленного деления с округлением в меньшую сторону;
INT - целое число, полученное в результате округления в меньшую сторону до целого значения, с отбрасыванием десятых долей;
mod - положительный остаток целого числа после деления.
Примечание - Если остаток окажется отрицательным, для получения положительного результата прибавляют значение делителя. Например, остаток от деления -29160 на 929 равен -361. При прибавлении к остатку -361 делителя 929 получают положительно
е значение 568.
3.3 Сокращения
В настоящем стандарте применяют следующие сокращения:
ECI - интерпретация расширенного канала;
GLI - идентификатор глобальной метки.
4 Требования к символике PDF417
4.1 Показатели символики
4.1.1 Основные показатели
Символика штрихового кода PDF417 (русское обозначение ПДФ417) имеет следующие основные показатели:
a) кодируемый набор знаков:
в режиме текстового уплотнения (4.4.2) позволяет кодировать все графические знаки КОИ-7, т.е. знаки с десятичными значениями от 32 до 126 включительно в соответствии с ИСО/МЭК 646*, а также некоторые управляющие знаки,
__________________
* Версия 7-битного кодированного набора знаков для обмена и обработки информации по ИСО 646 соответствует набору С0 ссылочной версии КОИ-7Н0 по ГОСТ 27463 и набору Г0 версии КОИ-8 В1 по ГОСТ Р 34.303. В ИСО/МЭК 15438 указанная версия обозначена как ASCII.
в режиме байтового уплотнения (4.4.3) позволяет кодировать все 256 значений 8-битных байтов. Этот режим включает все знаки КОИ-7 с десятичными значениями от 0 до 127 включительно и предусматривает поддержку международных наборов знаков,
в режиме цифрового уплотнения (4.4.4) позволяет эффективно кодировать цифровые последовательности данных,
различные функциональные кодовые слова для управления;
b) структура знака символа: знаки (n, k, m), представленные 17 модулями (n), элементами - 4 штрихами и 4 пробелами (k), с самым крупным элементом шириной в 6 модулей (m);
c) максимально возможное количество знаков данных в символе (при нулевом уровне коррекции ошибок) - 925 кодовых слов данных, позволяющих закодировать:
в режиме текстового уплотнения - 1850 знаков (2 знака данных на кодовое слово),
в режиме байтового уплотнения - 1108 знаков (1,2 знака данных на кодовое слово),
в режиме цифрового уплотнения - 2710 знаков (2,93 знака данных на кодовое слово).
При минимальном рекомендуемом уровне коррекции ошибок (error correction level) имеется 863 кодовых слов данных, позволяющих закодировать:
в режиме текстового уплотнения - 1726 знаков (2 знака данных на кодовое слово),
в режиме байтового уплотнения - 1033 знака (1,2 знака данных на кодовое слово),
в режиме цифрового уплотнения - 2528 знаков (2,93 знака данных на кодовое слово);
d) размер символа:
количество строк - от 3 до 90,
количество столбцов - от 1 до 30,
длина в модулях - от 90
максимальное количество кодовых слов - 928,
максимальное количество кодовых слов данных - 925.
Поскольку может быть задано как число строк, так и число столбцов, при печати может быть изменен и коэффициент сжатия символа PDF417 для выполнения требований по размещению;
e) задаваемая коррекция ошибок - от 2 до 510 кодовых слов на символ (4.7);
f) знаки, не относящиеся к знакам данных:
на строку - 73 модуля, включая свободные зоны,
на символ - не менее трех дополнительных кодовых слов, представленных в виде знаков символа;
g) тип кода - непрерывный, многострочный, двухмерный;
h) самоконтроль знака - присутствует;
i) двунаправленное декодирование - присутствует.
4.1.2 Дополнительные свойства
В символике PDF417 к дополнительным свойствам (обязательным или необязательным) относят:
a) уплотнение данных (обязательное свойство).
Установлены три схемы уплотнения совокупности знаков данных в кодовые слова. Обычно данные непосредственно не представляются на основе "один знак - одно кодовое слово" (4.4.2-4.4.4);
b) интерпретации расширенного канала (необязательное свойство).
Данный механизм позволяет кодировать до 811800 различных наборов знаков данных или интерпретаций (4.5);
c) Макро PDF417 (необязательное свойство).
Данный механизм предоставляет логическое и последовательное представление файлов данных в ряде символов PDF417. Таким образом, вплоть до 99999 символов PDF417, могут быть связаны или соединены и отсканированы в любом порядке для правильного восстановления исходного файла данных (4.13);
d) декодируемость от края до края (обязательное свойство).
PDF417 может декодироваться измерением размеров от края одного элемента знака символа до соответствующего края другого элемента (4.3.1);
e) перекрестное сканирование строк (обязательное свойство).
Для перекрестного сканирования строк в PDF417 используют сочетание трех следующих показателей:
- синхронизацию по горизонтали или синхронизацию по времени,
- идентификацию строки,
- синхронизацию по вертикали использованием значения кластеров для обеспечения локального распознавания строк.
При использовании данного сочетания одиночное линейное сканирование при пересечении ряда строк позволяет получить неполное декодирование данных, если хотя бы один полный знак символа в строке был декодирован и получено значение его кодового слова. В дальнейшем с помощью алгоритма декодирования отдельные кодовые слова могут быть соединены в значащую матрицу;
f) коррекция ошибок (обязательное свойство).
Пользователь может задать один из девяти уровней коррекции ошибок. На всех уровнях, кроме нулевого, возможно не только обнаружение ошибок, но и исправление ошибочно закодированных или недостающих кодовых слов (4.7);
g) Компакт PDF417 (Compact PDF417) (необязательное свойство).
В относительно "чистой" среде возможно сокращение некоторых строк со знаками, не относящимися к данным (4.12).
Примечание - В предыдущей версии показателей PDF417 данное свойство именовалось "Сокращенный PDF417" ("Truncated PDF417"). Термин Компакт PDF417 (Compact PDF417) является предпочтительным во избежание путаницы с наиболее общим использованием термина "сокращенный" ('truncated').
4.2 Структура символа
4.2.1 Параметры символа PDF417
Любой символ PDF417, состоящий из множества выровненных по вертикали строк, должен содержать не менее трех строк (но не более 90). Любая строка должна содержать не менее одного знака символа (но не более 30 знаков символа) без учета столбцов знаков СТАРТ, СТОП и столбцов индикатора строк. Символ должен включать свободные зоны со всех 4-х сторон. На рисунке 1 приведен символ PDF417 с закодированными данными: PDF417 Symbology Standard.
Рисунок 1 - Структура символа PDF417
Рисунок 1 - Структура символа PDF417.
4.2.2 Параметры строки
Каждая строка PDF417 должна содержать:
a) начальную свободную зону,
b) знак СТАРТ,
c) знак символа левого индикатора строки,
d) от 1 до 30 знаков символа,
e) знак символа правого индикатора строки,
f) знак СТОП,
g) конечную свободную зону.
Примечание - Число знаков символа (или кодовых слов), приведенных в перечислении d), соответствует числу столбцов в символе PDF417.
4.2.3 Последовательность кодовых слов
Символ PDF417 может содержать до 928 знаков символа или кодовых слов.
Примечание - Термин "Знак символа PDF417" рекомендуется использовать для обозначения напечатанной комбинации штрихов и пробелов; "кодовое слово" - для числового значения знака символа.
Кодовые слова должны быть приведены в следующей последовательности:
a) первое кодовое слово - дескриптор длины символа - всегда должно кодировать общее количество кодовых слов данных в символе, включая сам дескриптор длины символа, кодовые слова данных и кодовые слова-заполнители, за исключением числа кодовых слов коррекции ошибок;
b) кодовые слова формируют по старшинству разрядов подлежащих кодированию знаков. Могут быть вставлены функциональные знаки для уплотнения данных;
c) кодовые слова-заполнители помогают представлять последовательности кодовых слов в виде прямоугольной матрицы. Кодовые слова-заполнители можно также использовать для формирования дополнительных полных конечных строк с целью получения желаемого коэффициента сжатия или установленного в нормативном документе по применению;
d) необязательный управляющий блок Макро PDF417;
e) кодовые слова коррекции ошибки для обнаружения и исправления ошибок.
Кодовые слова должны быть расположены таким образом, чтобы кодовое слово позиции старшего разряда примыкало к дескриптору длины символа (Symbol Length Descriptor), а кодовые слова кодировались слева направо от верхнего ряда к нижнему. На рисунке 2 представлена в виде схемы последовательность для символа, подобного представленному на рисунке 1. На рисунке 2 используется уровень коррекции ошибок 1 и требуется одно кодовое слово для полного заполнения матрицы символа.
Рисунок 2 - Пример схемы размещения символа PDF417
СТАРТ | СТОП | ||||
Обозначения:
Рисунок 2 - Пример схемы размещения символа PDF417
Примечание - Значения
Правила и рекомендации по определению структуры матрицы приведены в 4.9.
4.3 Основное кодирование
4.3.1 Структура знака символа
Каждый знак символа PDF417 должен состоять из следующих элементов: четырех штрихов и четырех пробелов, ширина каждого из которых может быть от 1 до 6 модулей. Совокупная ширина 4 штрихов и 4 пробелов должна составлять 17 модулей. Знаки символа PDF417 могут быть декодированы путем измерения расстояний "
Каждый знак символа задается последовательностью штрихов и пробелов из восьми цифр, которые представляют ширину в модулях каждого из восьми элементов этого знака символа. На рисунке 3 представлен знак символа с последовательностью штрихов и пробелов 51111125.
Рисунок 3 - Знак символа PDF417
Рисунок 3 - Знак символа PDF417.
В PDF417 имеется 929 установленных значений знаков символа (кодовых слов), пронумерованных от 0 до 928.
Кодовые слова представлены в виде трех взаимно исключающих наборов знаков символа или кластеров. Каждый кластер кодирует 929 допустимых кодовых слов PDF417 в виде различных комбинаций штрихов и пробелов так, что один кластер отличается от другого. Кластеры обозначают номерами 0, 3, 6. Задание кластера распространяется на все знаки символа PDF417, за исключением знаков СТАРТ и СТОП.
Номер кластера
где
Номер кластера
Значения кодовых слов и последовательности штрихов и пробелов для каждого кластера знаков символа приведены в приложении А.
4.3.2 Знаки СТАРТ и СТОП
Знаки СТАРТ и СТОП должны быть представлены в соответствии с таблицей 1 и рисунком 4.
Таблица 1 - Последовательность штрихов и пробелов для знаков СТАРТ и СТОП
Знак | Последовательность штрихов и пробелов | ||||||||
В | S | В | S | В | S | В | S | В | |
СТАРТ | 8 | 1 | 1 | 1 | 1 | 1 | 1 | 3 | |
СТОП | 7 | 1 | 1 | 3 | 1 | 1 | 1 | 2 | 1 |
Рисунок 4 - Знаки PDF417 СТАРТ и СТОП
Рисунок 4 - Знаки PDF417 СТАРТ и СТОП.
Примечания:
1 Знаки PDF417 СТАРТ и СТОП уникальны тем, что в них присутствуют элементы шириной более 6 модулей.
2 Знак СТОП имеет один дополнительный элемент - штрих шириной 1 модуль.
Последовательность штрихов и пробелов в знаках СТАРТ и СТОП должна быть одинаковой для всех строк.
4.4 Высокоуровневое кодирование данных
Высокоуровневое кодирование преобразовывает знаки данных в соответствующие им значения кодовых слов.
При высокоуровневом кодировании используют схемы уплотнения данных. Соответствие заданных пользователем данных и последовательностей кодовых слов в PDF417 устанавливают три режима уплотнения данных:
текстовое (4.4.2),
байтовое (4.4.3),
цифровое (4.4.4).
Данная цепочка байтов данных может быть представлена различными последовательностями кодовых слов, в зависимости от кодирования переходов между режимами и подрежимами уплотнения. В символе PDF417 нет специального способа кодирования данных.
В каждом режиме предусмотрены 900 кодовых слов для кодирования данных и иных функций в рамках этого режима. Оставшиеся 29 кодовых слов предназначены для специальных функций (4.4.1), независимых от текущего режима уплотнения.
PDF417 также поддерживает систему интерпретации расширенного канала, позволяющую точно кодировать разные интерпретации данных в символе (4.5).
4.4.1 Функциональные кодовые слова
Кодовые слова со значениями от 900 до 928 (далее - кодовые слова от 900 до 928) назначены в качестве функциональных кодовых слов:
- для переключения между режимами (4.4.1.1),
- для усовершенствованных применений, использующих интерпретации расширенного канала,
- для других усовершенствованных применений (4.4.1.3 и 4.4.1.4).
В настоящее время кодовые слова от 903 до 912 и от 914 до 920 зарезервированы. В таблице 2 приведен полный список назначенных и зарезервированных функциональных кодовых слов, функции которых установлены в 4.4.1.1-4.4.1.4. Зарезервированные кодовые слова представлены в 4.4.6.
Таблица 2 - Назначение функциональных кодовых слов PDF417
Значение кодового слова | Функция | Наименование кодового слова | Пункт настоящего стандарта | |
русское | международное | |||
900 | Фиксация режима в режиме текстового уплотнения | Фиксация в режиме текстового уплотнения | Text Compaction mode latch | 4.4.1.1 |
901 | Фиксация режима в режиме байтового уплотнения | Фиксация в режиме байтового уплотнения | Byte Compaction mode latch | 4.4.1.1 |
902 | Фиксация режима в режиме цифрового уплотнения | Фиксация в режиме цифрового уплотнения | Numeric Compaction mode latch | 4.4.1.1 |
903-912 | Зарезервированы | - | - | - |
913 | Переключение регистра в режим байтового уплотнения | Регистр в режиме байтового уплотнения | mode shift to Byte Compaction mode | 4.4.1.1 |
914-920 | Зарезервированы | - | - | - |
921 | Инициализация считывающего устройства | Инициализация считывающего устройства | reader initialisation | 4.4.1.4 |
922 | Конечное кодовое слово для управляющего блока Макро PDF417 | Ограничитель Макро PDF417 | Macro PDF417 Terminator | 4.13 |
923 | Метка последовательности для идентификации необязательных полей в управляющем блоке Макро PDF417 | Начало необязательного поля Макро PDF417 | Beginning of Macro PDF417 Optional Field | 4.13 |
924 | Фиксация режима в режиме байтового уплотнения (используется отлично от 901) | Фиксация в режиме байтового уплотнения | Byte Compaction mode latch | 4.4.1.1 |
925 | Идентификатор для задаваемой пользователем интерпретации расширенного канала | Идентификатор ECI пользователя | identifier for a user defined ECI | 4.5 |
926 | Идентификатор общего назначения формата ECI | Идентификатор общего назначения формата ECI | identifier for a general purpose ECI format | 4.5 |
927 | Идентификатор ECI для набора знаков или кодовой страницы | Идентификатор ECI для набора знаков или кодовой страницы | identifier for an ECI of a character set or code page | 4.5 |
928 | Кодовое слово - Макро-метка для указания начала управляющего блока Макро PDF | Начало управляющего блока Макро PDF417 или Макро-маркер | Beginning of Macro PDF417 Control Block or Macro marker | 4.13 |
4.4.1.1 Функциональные коды для перехода режима
В одном символе PDF417 предусмотрена возможность двухстороннего переключения режимов с требуемой частотой. Рекомендации по выбору режимов приведены в 4.4.5.
Для перехода из текущего режима в требуемый режим (который будет оставаться в действии до тех пop, пока он не будет изменен на другой) должно использоваться кодовое слово фиксации в режиме. Для этой функции предназначены кодовые слова 900-902 и 924 (таблица 3).
Таблица 3 - Кодовые слова установления режима и перехода между режимами
Требуемый режим | Фиксация в режиме | Регистр в режиме |
Текстовое уплотнение | 900 | 913 |
Байтовое уплотнение | 901/924 | |
Цифровое уплотнение | 902 | |
|
Кодовое слово регистра в режиме 913 вызывает временный переход из режима текстового уплотнения в режим байтового уплотнения. Этот переход действует только для следующего кодового слова, после чего должен вернуться прежний подрежим режима текстового уплотнения. Кодовое слово 913 может применяться только в режиме текстового уплотнения; его использование установлено в 4.4.2.4.
Порядок перехода между тремя режимами установлен в таблице 4 и на рисунке 5.
Таблица 4 - Таблица перехода между режимами, представляющая кодовые слова и их функции
Исходный режим | Кодовое слово, используемое для перехода в требуемый режим | ||
текстового уплотнения | байтового уплотнения | цифрового уплотнения | |
Текстовое уплотнение | 900 (фиксация в режиме текстового уплотнения) | 913 (регистр в режиме байтового уплотнения) | 902 (фиксация в режиме цифрового уплотнения) |
Байтовое уплотнение | 900 (фиксация в режиме текстового уплотнения) | 901 (фиксация в режиме байтового уплотнения) | 902 (фиксация в режиме цифрового уплотнения) |
Цифровое уплотнение | 900 (фиксация в режиме текстового уплотнения) | 901 (фиксация в режиме байтового уплотнения) | 902 (фиксация в режиме цифрового уплотнения) |
Рисунок 5 - Возможные переходы между режимами
Рисунок 5 - Возможные переходы между режимами.
Правила перехода в режим байтового уплотнения приведены в 4.4.3.1.
4.4.1.2 Функциональные кодовые слова для перехода к интерпретациям расширенного канала
Кодовое слово интерпретации расширенного канала (кодовое слово ECI) может быть использовано для перехода к особой интерпретации, которая будет действовать до другого кодового слова ECI или до окончания данных. Для этой функции назначены кодовые слова от 925 до 927 (4.5).
4.4.1.3 Функциональные кодовые слова для Макро PDF417
Символы Макро PDF417 (в соответствии с 4.13) должны использовать кодовое слово 928 в начале управляющего блока Макро PDF417. Кодовые слова 922 и 923 используют для особых функций в Макро PDF417.
4.4.1.4 Функциональное кодовое слово для инициализации считывающего устройства
Кодовое слово используют для указания считывающему устройству, что данные, заключенные внутри символа, являются программным кодом для инициализации считывающего устройства. Кодовое слово 921 должно быть первым кодовым словом после дескриптора длины символа. В случае применения последовательности инициализации Макро PDF417 в каждом символе должно появляться кодовое слово 921.
Данные, содержащиеся в инициализации символа или в последовательности символов, не должны передаваться считывающим устройством.
4.4.2 Режим текстового уплотнения
Режим текстового уплотнения включает все графические знаки версии КОИ-7 (т.е. знаки с десятичными значениями от 32 до 126) и три управляющих знака версии КОИ-7: ГТ (НТ) или ГОРИЗОНТАЛЬНОЕ ТАБУЛИРОВАНИЕ (десятичное значение знака 9), ПС (LF) или ПЕРЕВОД СТРОКИ (десятичное значение знака 10), и ВК (CR) или ВОЗВРАТ КАРЕТКИ (десятичное значение знака 13).
Примечание - В скобках приведены международные обозначения управляющих знаков (приложение V).
Режим текстового уплотнения предусматривает также различные знаки с функциями фиксации и переключения регистра, которые используют исключительно в рамках режима текстового уплотнения.
В режиме текстового уплотнения осуществляется кодирование до двух знаков в кодовом слове. Правила уплотнения для преобразования данных в кодовые слова PDF417 приведены в 4.4.2.2. Переключения подрежимов приведены в 4.4.2.3.
4.4.2.1 Подрежимы режима текстового уплотнения
Режим текстового уплотнения предусматривает четыре подрежима:
- прописных букв (Alpha) (прописные буквы латинского алфавита),
- строчных букв (Lower) (строчные буквы латинского алфавита),
- смешанных знаков (Mixed) (числа и некоторые знаки пунктуации),
- знаков пунктуации (Punctuation).
В каждом подрежиме содержится 30 знаков, в том числе знаки фиксации в подрежиме (sub-mode latch) и регистра в подрежиме (sub-mode shift).
Режимом уплотнения по умолчанию для PDF417 должен быть режим текстового уплотнения в подрежиме прописных букв. При переходе из другого режима кодовое слово фиксации в режиме текстового уплотнения должно всегда переключать в подрежим прописных букв режима текстового уплотнения.
Все знаки и их значения приведены в таблице 5.
Таблица 5 - Определение подрежимов режима текстового уплотнения
30 базовых значений | Подрежимы режима текстового уплотнения | |||||||
прописных букв (Alpha) | строчных букв (Lower) | смешанных знаков (Mixed) | знаков пунктуации (Punctuation) | |||||
Знак | КОИ-7 | Знак | КОИ-7 | Знак | КОИ-7 | Знак | КОИ-7 | |
0 | А | 65 | а | 97 | 0 | 48 | ; | 59 |
1 | В | 66 | b | 98 | 1 | 49 | < | 60 |
2 | С | 67 | с | 99 | 2 | 50 | > | 62 |
3 | D | 68 | d | 100 | 3 | 51 | @ | 64 |
4 | Е | 69 | е | 101 | 4 | 52 | [ | 91 |
5 | F | 70 | f | 102 | 5 | 53 | \ | 92 |
6 | G | 71 | g | 103 | 6 | 54 | ] | 93 |
7 | Н | 72 | h | 104 | 7 | 55 | 95 | |
8 | I | 73 | i | 105 | 8 | 56 | 96 | |
9 | J | 74 | j | 106 | 9 | 57 | ~ | 126 |
10 | К | 75 | k | 107 | & | 38 | ! | 33 |
11 | L | 76 | l | 108 | BK (CR) | 13 | BK (CR) | 13 |
12 | М | 77 | m | 109 | ГТ (НТ) | 9 | ГТ (НТ) | 9 |
13 | N | 78 | n | 110 | 44 | 44 | ||
14 | O | 79 | o | 111 | : | 58 | : | 58 |
15 | Р | 80 | p | 112 | # | 35 | ПС (LF) | 10 |
16 | Q | 81 | q | 113 | - | 45 | - | 45 |
17 | R | 82 | г | 114 | . | 46 | . | 46 |
18 | S | 83 | s | 115 | $ | 36 | $ | 36 |
19 | Т | 84 | t | 116 | / | 47 | / | 47 |
20 | U | 85 | u | 117 | + | 43 | 34 | |
21 | V | 86 | v | 118 | % | 37 | I | 124 |
22 | W | 87 | w | 119 | * | 42 | * | 42 |
23 | Х | 88 | x | 120 | = | 61 | ( | 40 |
24 | Y | 89 | y | 121 | 94 | ) | 41 | |
25 | Z | 90 | z | 122 | pl | ? | 63 | |
26 | Пробел (space) | 32 | Пробел (space) | 32 | Пробел (space) | 32 | { | 123 |