MicroPDF417
MicroPDF417 (англ. MicroPDF417) — двухмерная (2D) линейно-матричная штрих-кодовая симвология, изобретённая в 1996 году Фредериком Шюсслером (Frederick Schuessler), Кевином Хантером (Kevin Hunter), Сундипом Кумаром (Sundeep Kumar) и Кэри Чу (Cary Chu) из компании Symbol Technologies[1]. MicroPDF417 строится из специально закодированных столбцов шаблонов адресации строк (Row Address Patterns, RAP) и выровненных с ними столбцов данных, кодируемых по схеме «417», предложенной в 1990 году[2]. В 2006 году стандарт был зарегистрирован как ISO/IEC 24728:2006[3].
Штрих-коды MicroPDF417 могут считываться с помощью как лазерных сканеров, так и камерных чтителей штрих-кодов[4]. Как и большинство двумерных штрих-кодов, стандарт MicroPDF417 включает коррекцию ошибок по методу Рида — Соломона (Reed–Solomon error correction), что позволяет декодировать даже повреждённые или загрязнённые символы, а также обеспечивает высокую плотность данных. Однако максимальный объём информации, который может быть закодирован — 150 байт или 250 алфавитно-цифровых символов в самой крупной версии с четырьмя столбцами[4]. Кроме того, из-за специфики конструкции, MicroPDF417 подходит только для печати на высококачественных документах и изображениях.
В типовых режимах MicroPDF417 позволяет кодировать текст, числа, двоичные данные и Unicode-текст с использованием механизма расширенной интерпретации каналов (Extended Channel Interpretation). Кроме того, предусмотрены специальные режимы, предназначенные для кодирования текста и числовых данных в специальных индустриальных форматах, например, для стандартов составных штрих-кодов GS1 Composite[5].
История и стандарты
Штрих-код MicroPDF417 был запатентован в 1996 году Фредериком Шюсслером, Кевином Хантером, Сундипом Кумаром и Кэри Чу из компании Symbol Technologies[1]. Он является развитием линейно-матричной символогии PDF417[6] и использует сходные принципы кодирования данных[2]. До 2006 года спецификация распространялась через ассоциацию AIM[7] и была известна как стандарт ITS MicroPDF417[8], применяясь тогда в составе EAN.UCC Composite Symbology[9]. В 2006 году MicroPDF417 был утверждён как международный стандарт ISO/IEC 24728:2006[3] и теперь может использоваться как самостоятельно, так и как часть составных кодов GS1 Composite[5].
Применение
Основное применение MicroPDF417 — добавление расширенных данных к линейным штрих-кодам[9]. Благодаря высокой плотности кодирования, технология позволяет компактно размещать дополнительную информацию на ограниченной площади. Широко применяется в учёте и маркировке товаров, особенно в составе составных символогий EAN.UCC Composite[9] и GS1 Composite[5]. Большинство современных принтеров штрих-кодов[10] и сканеров[11] поддерживают работу с MicroPDF417.
Структура штрих-кода
Символ MicroPDF417 содержит минимум два столбца шаблонов адресации строк (Row Address Patterns, RAP), определяющих номера строк, и выровненные по ним столбцы данных[12]. Существуют четыре варианта кодов с 1, 2, 3 и 4 столбцами данных. Стандартная структура включает:[3]
- Тихая зона (quiet zone)
- Левый RAP-столбец
- Переменное число столбцов данных и, при необходимости, центральный RAP-столбец
- Вариант с одним столбцом данных: 1 Data column
- С двумя столбцами данных: 2 Data columns
- С тремя столбцами: 1 Data column, центральный RAP, 2 Data columns
- С четырьмя столбцами: 2 Data columns, центральный RAP, 2 Data columns
- Правый RAP-столбец с завершающей чёрной чертой (stop bar)
- Тихая зона
Каждая из версий MicroPDF417 допускает определённое количество строк, зависящее от числа столбцов[3] Высота строки составляет от 2 до 5 минимальных ширин элемента (штриха или пробела).[3]
| Столбцы данных | Допустимые строки | Структура |
|---|---|---|
| 1 | 11, 14, 17, 20, 24, 28 | |
| 2 | 8, 11, 14, 17, 20, 23, 26 | |
| 3 | 6, 8, 10, 12, 15, 20, 26, 32, 38, 44 | |
| 4 | 4, 6, 8, 10, 12, 15, 20, 26, 32, 38, 44 |
Структура столбцов RAP
Столбцы шаблонов адресации строк (RAP)[3] построены по особой схеме: каждый шаблон отображает номер строки, но не совпадает с ним. Каждый RAP состоит из 10 модулей, которые разбиты на 3 чёрные полосы и 3 белых промежутка, ширина которых может варьировать от 1 до 5 модулей. Все RAP начинаются с чёрной полосы и оканчиваются белым промежутком; правый RAP дополняется заключительной чёрной полосой.
Для левого и правого RAP используется 52 значения шаблонов, для центрального — 52 других; значения RAP — от 1 до 52. Модификации MicroPDF417 с одним и двумя столбцами данных используют только левый и правый RAP, с тремя и четырьмя столбцами — дополнительно центральный.
Каждый RAP в MicroPDF417 содержит определённую специальную последовательность (RNA — Row Number Assignments),[3] которая однозначно задаёт версию и соответствие номеру строки.
Например, MicroPDF417 с 4 столбцами и 4 строками содержит: левый RAP с номерами от 47 до 50, центральный — от 19 до 22, правый — от 43 до 46. Сочетание этих последовательностей определяет структуру символа и связь RAP-значения с текущей строкой.
Кодовые слова (Codewords)
Кодирование данных в MicroPDF417 сходно с символогией PDF417.[3] Каждая строка данных содержит 17 модулей, состоящих из 4 чёрных полос и 4 белых промежутков (от 1 до 6 модулей шириной каждая). Одно кодовое слово — это число от 0 до 928, все слова разделены по трём кластерам с номерами 0, 3 и 6.
Номер кластера определяется по формуле:[3]
Коррекция ошибок
MicroPDF417 поддерживает коррекцию ошибок по коду Рида — Соломона.[3] Число кодовых слов коррекции фиксировано для каждой версии.[3] Доля символа, отведённая под слова коррекции, составляет от 28 % до 67 %. Коррекция позволяет восстанавливать как стирания, так и ошибки замены:[3]
- Возможность коррекции стираний: число кодовых слов коррекции минус 1;
- Ошибки замены: (число кодовых слов коррекции минус 1) делить на 2.
Пример размещения кодовых слов MicroPDF417
Ниже приведён пример расположения всех кодовых слов в символе MicroPDF417:[3]
| Левый RAP | Столбец данных 1 | Столбец данных 2 | Центральный RAP | Столбец данных 3 | Столбец данных 4 | Правый RAP |
|---|---|---|---|---|---|---|
| LR47 | D7 | D6 | CR19 | D5 | D4 | RR43 |
| LR48 | D3 | D2 | CR20 | D1 | D0 | RR44 |
| LR49 | E7 | E6 | CR21 | E5 | E4 | RR45 |
| LR50 | E3 | E2 | CR22 | E1 | E0 | RR46 |
LR(x) — идентификатор левого шаблона адресации строки.
D(x) — кодовое слово данных.
CR(x) — идентификатор центрального шаблона адресации строки.
RR(x) — идентификатор правого шаблона адресации строки.
E(x) — кодовое слово коррекции ошибок.
Кодирование
В MicroPDF417 определено 929 возможных кодовых слов, из которых 900 (от 0 до 899) предназначены для кодирования данных в различных режимах, а 29 (900–928) — для специальных функций,[3] в основном управляющих режимом кодирования. По типу режимов различаются обычные режимы кодирования (для текста, чисел, двоичных данных) и специальные режимы для отдельных промышленных применений.
Обычные режимы
Обычные режимы кодирования MicroPDF417 повторяют режимы PDF417:[3]
- числовой режим для кодирования цифр (0–9);
- текстовый режим (около 100 символов ANSI, включая цифры, латинские буквы верхнего и нижнего регистра, знаки препинания и спецсимволы);
- байтовый режим (значения байтов от 0 до 255);
- символы Unicode с использованием подрежимов расширенной интерпретации каналов (Extended Channel Interpretation).[3]
Все режимы могут совмещаться (режим смешанного кодирования),[3] что позволяет компактнее размещать данные и уменьшать общий размер символа.
Специальные режимы
MicroPDF417 может использоваться в специальных промышленных режимах:[3]
- UCC/EAN-128 — для максимально компактного кодирования идентификаторов приложений GS1 (GS1 Application Identifiers);[13].
- UCC/EAN-128 «linked» — для кодирования и маркировки символа как связанного (используется вместе с линейной частью);
- Режим EAN.UCC Composite symbol «linked» — для передачи данных согласно спецификации GS1 Composite (ISO/IEC 24723:2010)[5]
- Строки макросов «05 Macro» и «06 Macro» по ISO/IEC 15434:2019 — для кодирования отраслевых заголовков и концовок в компактной форме;[14];
- Режим эмуляции Code 128[15] — декодер должен воспринимать символ как Code 128, а не как MicroPDF417.
Структурированное добавление (structured append)
Символ MicroPDF417 может содержать метаданные[3], описывающие данные и сам штрих-код. Однако из-за малой ёмкости используется редко. Некоторые поля структурированного добавления обязательны и всегда указываются при использовании функции, часть — опциональны:
| Название поля | Обязательность | Тип значения | Описание |
|---|---|---|---|
| Индекс сегмента | Обязательное | Числовой | Íндекс текущего символа MicroPDF417 в последовательности (0–99 998) |
| Идентификатор файла | Обязательное | Числовой | Переменное по длине поле, уникально идентифицирующее последовательность (barcode file). Размер не ограничен стандартом |
| Имя файла | Опционально | Текст | Имя файла со штрих-кодом в свободном формате |
| Число сегментов | Опционально | Числовой | Количество символов MicroPDF417 в уникальной последовательности (1–99 999) |
| Временная метка | Опционально | Числовой | Время создания файла: число секунд с 1 января 1970 г. 00:00:00 GMT |
| Отправитель | Опционально | Текст | Отправитель файла штрих-кода (произвольный текст) |
| Получатель | Опционально | Текст | Адрес отправителя файла штрих-кода (произвольный текст) |
| Размер файла | Опционально | Числовой | Размер файла штрих-кода в байтах |
| Контрольная сумма | Опционально | Числовой | Контрольная сумма файла (CRC-CCITT-16: x^16 + x^12 + x^5 + 1) |
Примечания
- ↑ 1 2 Frederick Schuessler, Kevin Hunter, Sundeep Kumar, Cary Chu. United States Patent US5811787A by Symbol Technologies LLC "Two-dimensional bar code symbology using implicit version information encoding" (англ.). patents.google.com. United States Patent and Trademark Office (16 октября 1996). Дата обращения: 24 июня 2024.
- ↑ 1 2 Theodosios Pavlidis, Yajium P. Wang, Jerome Swartz. United States Patent US5304786 "High density two-dimensional bar code symbol" (англ.). patents.google.com. United States Patent and Trademark Office (5 января 1990). Дата обращения: 24 июня 2024.
- ↑ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ISO/IEC. ISO/IEC 24728:2006 "Information technology Automatic identification and data capture techniques MicroPDF417 bar code symbology specification" (англ.). iso.org. International Organization for Standardization (2020). Дата обращения: 24 июня 2024. Архивировано 28 сентября 2025 года.
- ↑ 1 2 Beginners Guide to 2-D Barcodes (англ.). identifydirect.com 19. Identify Direct Ltd. Дата обращения: 24 июня 2024. Архивировано 4 ноября 2024 года.
- ↑ 1 2 3 4 ISO/IEC. ISO/IEC 24723:2010 "Information technology Automatic identification and data capture techniques GS1 Composite bar code symbology specification" (англ.). iso.org. International Organization for Standardization (2023). Дата обращения: 24 июня 2024. Архивировано 3 июля 2025 года.
- ↑ Hiroko Kato (2005). “2D-barcode for mobile devices”. Theses: Honours [англ.]. Edith Cowan University: 23. Дата обращения 2024-06-24.
- ↑ AIMstore. aimglobal.org. Дата обращения: 24 июня 2024. Архивировано 14 июня 2002 года.
- ↑ Stacked Bar Code Symbologies. aimglobal.org. Дата обращения: 24 июня 2024. Архивировано 18 августа 2002 года.
- ↑ 1 2 3 Composite Overview. aimglobal.org. Дата обращения: 24 июня 2024. Архивировано 15 июня 2002 года.
- ↑ Barcode Printer TSC BARCODE PRINTER Series (англ.). tscprinters.com. Дата обращения: 24 июня 2024. Архивировано 8 марта 2024 года.
- ↑ M-10 2D CMOS Imager Presentation Scanner (англ.). opticonusa.com. Дата обращения: 24 июня 2024. Архивировано 6 октября 2025 года.
- ↑ Hiroko Kato, Keng T. Tan, Douglas Chai. Barcodes for Mobile Devices : [англ.]. — Cambridge University Press, 8 апреля 2010. — P. 34. — ISBN 978-1139487511.
- ↑ GS1 Application Identifiers (англ.). gs1.org. Дата обращения: 24 июня 2024. Архивировано 30 июля 2025 года.
- ↑ ISO/IEC. ISO/IEC 15434:2019 "Information technology Automatic identification and data capture techniques Syntax for high-capacity ADC media" (англ.). iso.org. International Organization for Standardization (2019). Дата обращения: 24 июня 2024. Архивировано 3 июля 2025 года.
- ↑ Generate PDF417 and Micro PDF417 Barcodes in C# (англ.). aspose.com. Дата обращения: 24 июня 2024. Архивировано 3 июля 2025 года.
Литература
- Hiroko Kato, Keng T. Tan, Douglas Chai. Barcodes for Mobile Devices : [англ.]. — Cambridge University Press, 2010. — ISBN 978-1139487511.