ГОСТ ISO/IEC 15417-2013
Группа П85
МЕЖГОСУДАРСТВЕННЫЙ СТАНДАРТ
Информационные технологии
ТЕХНОЛОГИИ АВТОМАТИЧЕСКОЙ ИДЕНТИФИКАЦИИ И СБОРА ДАННЫХ
Спецификация символики штрихового кода Code 128
Information technology. Automatic identification and data capture techniques. Code 128 bar code symbology specification
МКС 35.040
01.080.50
Дата введения 2014-07-01
Предисловие
Предисловие
Цели, основные принципы и основной порядок проведения работ по межгосударственной стандартизации установлены в ГОСТ 1.0-2015 "Межгосударственная система стандартизации. Основные положения" и ГОСТ 1.2-2015 "Межгосударственная система стандартизации. Стандарты межгосударственные, правила и рекомендации по межгосударственной стандартизации. Правила разработки, принятия, обновления и отмены"
Сведения о стандарте
1 ПОДГОТОВЛЕН Ассоциацией автоматической идентификации "ЮНИСКАН/ГС1 РУС" (Российская Федерация) при участии Ассоциации автоматической идентификации ГС1 Беларуси (Ассоциации ГС1 Бел.) в рамках Межгосударственного технического комитета МТК 517 "Технологии автоматической идентификации и сбора данных и биометрия" на основе перевода на русский язык англоязычной версии стандарта, указанного в пункте 5
2 ВНЕСЕН Федеральным агентством по техническому регулированию и метрологии (Росстандарт)
3 ПРИНЯТ Межгосударственным советом по стандартизации, метрологии и сертификации (протокол от 28 августа 2013 г. N 58-П)
За принятие проголосовали:
Краткое наименование страны по МК (ИСО 3166) 004-97 | Код страны по МК (ИСО 3166) 004-97 | Сокращенное наименование национального органа по стандартизации |
Армения | AM | Минэкономики Республики Армения |
Беларусь | BY | Госстандарт Республики Беларусь |
Казахстан | KZ | Госстандарт Республики Казахстан |
Киргизия | KG | Кыргызстандарт |
Молдова | MD | Молдова-Стандарт |
Россия | RU | Росстандарт |
Таджикистан | TJ | Таджикстандарт |
Узбекистан | UZ | Узстандарт |
4 Приказом Федерального агентства по техническому регулированию и метрологии от 28 октября 2013 г. N 1226-ст межгосударственный стандарт ГОСТ ISO/IEC 15417-2013 введен в действие в качестве национального стандарта Российской Федерации с 1 июля 2014 г.
5 Настоящий стандарт идентичен международному стандарту ISO/IEC 15417:2007* "Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация символики штрихового кода Code 128" ("Information technology - Automatic identification and data capture techniques - Code 128 bar code symbology specification", IDT).
________________
* Доступ к международным и зарубежным документам, упомянутым здесь и далее по тексту, можно получить, перейдя по ссылке на сайт . - .
Международный стандарт разработан подкомитетом ISO/IEC JTC 1/SC 31 "Технологии автоматической идентификации и сбора данных" совместного Технического комитета по стандартизации ISO/IEC JTC 1 "Информационные технологии" Международной организации по стандартизации (ISO) и Международной электротехнической комиссии (IEC).
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им межгосударственные стандарты, сведения о которых приведены в дополнительном приложении ДА.
Сведения о национальных организациях GS1 в странах - членах МГС приведены в дополнительном приложении ДБ
6 ВЗАМЕН ГОСТ 30743-2001 (ИСО/МЭК 15417-2000)
7 Некоторые положения международного стандарта, указанного в пункте 4, могут являться объектами получения патентных прав. Международная организация по стандартизации (ISO) не несет ответственности за идентификацию некоторых или всех подобных прав
8 ПЕРЕИЗДАНИЕ. Ноябрь 2018 г.
Информация об изменениях к настоящему стандарту публикуется в ежегодном информационном указателе "Национальные стандарты", а текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячном информационном указателе "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)
Введение
Технология штрихового кодирования основана на распознавании закодированных комбинаций штрихов и пробелов определенных размеров. Существует множество способов кодирования информации в форме штрихового кода, называемых символиками. Code 128 - одна из таких символик. Правила, регламентирующие представление знаков в комбинациях штрихов и пробелов, и другие необходимые показатели каждой символики штрихового кода называют спецификацией символики.
Изготовителям оборудования для штрихового кодирования и пользователям технологии штрихового кодирования необходимы стандартные общедоступные спецификации символик штрихового кода, которые они могли бы использовать при разработке оборудования и программного обеспечения.
Для дополнительного пояснения текста стандарта приведены сноски, выделенные курсивом*.
________________
* В оригинале обозначения и номера стандартов и нормативных документов приводятся обычным шрифтом. - .
1 Область применения
Настоящий стандарт устанавливает требования к символике штрихового кода Code 128, определяет показатели этой символики, кодирование знаков данных, размеры, алгоритмы декодирования и параметры применения, а также строки - префиксы идентификатора символики для символов Code 128.
2 Нормативные ссылки
В настоящем стандарте использованы нормативные ссылки на следующие стандарты*, которые необходимо учитывать при применении настоящего стандарта. В случае ссылок на стандарты, у которых указана дата утверждения, необходимо пользоваться только указанной редакцией. В случае, когда дата утверждения не приведена, следует пользоваться последней редакцией ссылочных стандартов, включая любые поправки и изменения к ним.
_______________
* Таблицу соответствия национальных стандартов международным см. по ссылке. - .
ISO/IEC 646:1991 Information technology - ISO 7-bit coded character set for information interchange (Информационные технологии. Набор 7-битовых кодированных знаков ISO для обмена информацией)
ISO/IEC 8859-1 Information technology - 8-bit single-byte coded graphic character sets - Part 1: Latin alphabet N 1 (Информационные технологии. 8-битовые однобайтные наборы кодированных графических символов. Часть 1. Латинский алфавит номер 1)
ISO/IEC 15416 Information technology - Automatic identification and data capture techniques - Bar code print quality test specification - Linear symbols (Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация испытаний качества печати символов штрихового кода. Линейные символы)
ISO/IEC 15424 Information technology - Automatic identification and data capture techniques - Data Carrier Identifiers (including Symbology Identifiers) [Информационные технологии. Технологии автоматической идентификации и сбора данных. Идентификаторы носителей данных (включая идентификаторы символик)]
ISO/IEC 19762-1 Information technology - Automatic identification and data capture (AIDC) techniques - Harmonized vocabulary - Part 1: General terms relating to AIDC [Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 1. Общие термины в области АИСД]
ISO/IEC 19762-2 Information technology - Automatic identification and data capture (AIDC) techniques - Harmonized vocabulary - Part 2: Optically readable media (ORM) [Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 2. Оптические носители данных (ОНД)]
3 Термины и определения
В настоящем стандарте применены термины по ISO/IEC 19762-1, ISO/IEC 19762-2.
4 Требования
4.1 Показатели символики
К показателям символики Code 128 относят:
a) набор кодированных знаков:
1) все 128 знаков по ISO/IEC 646, то есть знаки с десятичными значениями от 0 до 127 включительно по ISO/IEC 646.
Примечание - В настоящем стандарте используют набор кодированных знаков G0 по ISO/IEC 646 и набор кодированных знаков С0 по ISO/IEC 6429 (знаки с десятичными значениями от 28 до 31 представляют знаки FS, GS, RS и US соответственно),
2) знаки с десятичными значениями от 128 до 255 также могут быть закодированы,
3) четыре функциональных знака, не являющихся данными,
4) четыре знака для выбора соответствующего кодового набора знаков*,
_______________
* Кодовый набор знаков называют также кодируемым набором знаков.
5) три знака Start,
6) один знак Stop;
b) тип кода: непрерывный;
c) число элементов в знаке символа: шесть, включая три штриха и три пробела, состоящие каждый из одного, двух, трех или четырех модулей по ширине (знак Stop имеет семь элементов, включающих в себя четыре штриха и три пробела);
d) самоконтроль знака: присутствует;
e) длина символа: переменная;
f) двунаправленное декодирование: присутствует;
g) контрольный знак символа: один, обязательный (см. приложение А, раздел А.1);
h) плотность знака данных: 11 модулей (5,5 модулей на цифровой знак);
i) часть символа, не содержащая данных: эквивалентна 35 модулям.
4.2 Структура символа
Символы Code 128 должны включать в себя:
a) начальную свободную зону;
b) знак Start;
c) один или несколько знаков, представляющих данные и специальные знаки;
d) контрольный знак символа;
е) знак Stop;
f) конечную свободную зону.
Символ Code 128, кодирующий текст "AIM", представлен на рисунке 1.
Рисунок 1 - Символ Code 128
4.3 Кодирование знака
4.3.1 Структура знака символа для данных
Каждый знак символа для данных состоит из шести элементов (трех штрихов и трех пробелов, расположенных поочередно в направлении слева направо, начиная со штриха), каждый из которых может содержать от одного до четырех модулей при суммарной длине всех штрихов и всех пробелов не более 11 модулей.
Сумма модулей в штрихах в любом знаке символа всегда должна быть четной (четный паритет), поэтому сумма модулей в пробелах всегда должна быть нечетной. Эта особенность паритета обеспечивает выполнение самоконтроля знака. Знак Stop имеет дополнительный штрих шириной два модуля, при этом общая длина знака Stop увеличивается до 13 модулей.
Каждому знаку символа для данных присвоено числовое значение (см. таблицу 1). Это значение используют для вычисления значения контрольного знака символа. Кроме того, эти числовые значения можно использовать при сравнении таблицы 1 с кодовой таблицей по ISO/IEC 646 (см. приложение D). В таблице 1 установлены все значения знаков, используемых в символе Code 128. В графе "Ширина элементов" числовые значения определяют длину элементов в модулях или кратную размеру .
Знак Start А представлен на рисунке 2.
Рисунок 2 - Знак Start А для символа Code 128
Пример знака символа для данных в символе Code 128 с числовым значение 35, которое соответствует букве (знаку данных) "С" для кодового набора А или В или числу "35" для кодового набора С, приведен на рисунке 3.
Рисунок 3 - Знак символа для данных с числовым значением 35 для символа Code 128
Знак Stop представлен на рисунке 4.
Рисунок 4 - Знак Stop для символа Code 128
4.3.2 Кодирование знаков данных
Code 128 имеет три уникальных кодовых набора знаков данных*, представленных в таблице 1 как кодовые наборы А, В и С, каждый из которых содержит кодовый поднабор знаков по ISO/IEC 646 совместно с различными вспомогательными знаками. Представленные комбинации штрихов и пробелов знаков символов соответствуют знакам данных, приведенным в графах "Кодовый набор А", "Кодовый набор В" или "Кодовый набор С".
________________
* Кодовые наборы знаков называют также кодируемыми наборами знаков.
Выбор кодового набора зависит от применения соответствующего знака Start или использования одного из знаков Code A, Code В, Code С** или знака Shift.
________________
** Знаки Code A, Code В и Code С являются командами перехода на соответствующий кодовый набор. Аналогичным свойством обладает знак Shift.
Если символ начинается со знака Start А, то изначально определен кодовый набор А. Аналогично определяются кодовые наборы В и С, когда символ начинается со знака Start В или Start С соответственно. Кодовый набор может быть изменен в пределах символа с помощью знаков Code А, Code В и Code С или знака Shift (использование этих специальных знаков в соответствии с 4.3.4.1).
Одни и те же данные могут быть представлены различными символами Code 128 с использованием различных комбинаций знаков Start, знаков перехода на кодовые наборы Code A, Code В и Code С*** и знака Shift. Конкретное применение символа Code 128 не должно устанавливать требований по выбору схемы кодирования данных. Правила, способствующие минимизации длины символа для любых данных, приведены в приложении Е.
________________
*** Кодовые наборы Code A, Code В и Code С называют также кодируемыми наборами Code A, Code В и Code С.
Кроме того, декодер должен декодировать символы, содержащие допустимые комбинации знаков Start, Code A, Code В, Code С и Shift и данных, отличные от тех, рекомендации по применению которых в виде алгоритма приведены в приложении Е, в том числе такие комбинации, как символ со знаками Code A, Code В, Code С или Shift, стоящими в конце кодируемых данных.
Таблица 1 - Кодирование знаков в символе Code 128.
Продолжение таблицы 1
Окончание таблицы 1
Примечание - Знак Stop состоит из 13 модулей в четырех штрихах и трех пробелах. Любой иной знак имеет ширину 11 модулей, начинается со штриха и заканчивается пробелом, включает в себя шесть элементов, ширина каждого из которых изменяется от одного до четырех модулей. Числовые значения в графе "Ширина элементов" для "В" и "S" определяют соответственно число модулей в каждом штрихе или пробеле в соответствующих знаках символа.
4.3.3 Кодовые наборы
________________
* Кодовые наборы называют также кодируемыми наборами.
4.3.3.1 Кодовый набор А
Кодовый набор А включает в себя все типовые прописные буквы латинского алфавита, арабские цифры, специальные графические знаки (знаки пунктуации) и управляющие знаки с десятичными значениями от 00 до 95 включительно по ISO/IEC 646, а также семь специальных знаков.
4.3.3.2 Кодовый набор В
Кодовый набор В включает в себя все типовые прописные и строчные буквы латинского алфавита, арабские цифры и специальные графические знаки (знаки пунктуации) с десятичными значениями от 32 до 127 включительно по ISO/IEC 646, а также семь специальных знаков.
4.3.3.3 Кодовый набор С
Кодовый набор С включает в себя множество из 100 пар цифр от 00 до 99 включительно, а также три специальных знака. Это позволяет кодировать в одном знаке символа для данных сразу две цифры.
4.3.4 Специальные знаки
Последние семь специальных знаков кодовых наборов А и В (значения знаков символа от 96 до 102) и последние три знака кодового набора С (значения знаков символа от 100 до 102) представляют собой специальные знаки, не являющиеся данными и не соответствующие ISO/IEC 646, и предназначены для устройств считывания штрихового кода.
4.3.4.1 Знаки перехода на соответствующий кодовый набор (Code) и знак Shift
Знаки перехода на соответствующий кодовый набор (Code) и знак Shift используют для изменения одного кодового набора на другой в пределах одного символа (при этом декодером данные знаки не передаются) следующим образом:
a) Знаки перехода на соответствующий кодовый набор (Code)
Знаки Code A, Code В или Code С изменяют кодовый набор знаков символа для данных с одного, определенного ранее кодового набора, на другой кодовый набор, определяемый соответствующим знаком Code. Это изменение применяют ко всем знакам, следующим после знака Code до конца символа или до следующего знака Code, или знака Shift.
b) Знак Shift
Знак Shift изменяет набор знаков с А на В или с В на А только для одного знака после знака Shift. Знаки, стоящие после измененного знака, должны возвратиться к представлению того набора знаков (А или В), который был определен до знака Shift. Знак Shift не применяют для знаков Code и Shift.
4.3.4.2 Функциональные знаки
Функциональные знаки FNC формируют управляющие команды в устройствах считывания штриховых кодов, которые обеспечивают специальные режимы их функционирования и применения.
a) Знак FNC1 применяют в соответствии с требованиями, установленными в приложении В.
b) Знак FNC2 (функция соединения сообщения) формирует команду в устройстве считывания штрихового кода для обеспечения временного хранения данных, содержащихся в символе штрихового кода, в котором присутствует функциональный знак FNC2, а также обеспечивает присоединение данных, содержащихся в символе штрихового кода с FNC2, в качестве префикса к данным последующего символа штрихового кода для совместной их передачи. Расположение функционального знака FNC2 - произвольное в пределах конкретного символа. Если порядок следования данных имеет принципиальное значение, необходимо обеспечить порядок считывания символов в требуемой последовательности.
c) Знак FNC3 (функция инициализации) формирует в устройстве считывания штрихового кода команду на интерпретацию данных символа штрихового кода, содержащего знак FNC3, в качестве инструкций для инициализации или перепрограммирования этого устройства считывания штрихового кода. Данные такого символа штрихового кода не должны передаваться устройством считывания штрихового кода.
d) Знак FNC4 используют для возможности применения расширенного набора кодированных знаков (с десятичными значениями от 128 до 255) по ISO/IEC 8859-1 или иным способом, установленным в спецификациях по применению. При использовании одиночного знака FNC4 к десятичному значению знака по ISO/IEC 646, следующего за знаком FNC4, добавляют значение 128. Знак Shift может следовать за знаком FNC4 в том случае, если необходимо изменить набор знаков для последующего знака данных. Следующие за ним знаки данных возвращаются к стандартному набору по ISO/IEC 646. Если используют два последовательных знака FNC4, то ко всем десятичным значениям последующих знаков данных по ISO/IEC 646 добавляют 128 до тех пор, пока не встретятся следующие сдвоенные знаки FNC4 или не будет достигнут конец символа. В такой последовательности кодирования для возврата к стандартному кодированию по ISO/IEC 646 только для одного последующего знака данных устанавливают один знак FNC4. Знаки Shift и Code в такой последовательности должны иметь типовое действие. По умолчанию используют знаки по ISO/IEC 8859-1 с десятичными значениями от 128 до 255 в соответствии с приложением F, но нормативные документы, регламентирующие применение, могут устанавливать или ссылаться на альтернативные наборы, соответствующие байтам с десятичными значениями от 128 до 255.
4.3.4.3 Знаки Start и Stop
Знаки Start А, В и С определяют соответствующий кодовый набор знаков для начального использования в символе.
Знак Stop должен быть одинаковым для всех кодовых наборов знаков. Знаки Start и Stop не должны передаваться декодером.
4.3.5 Контрольный знак символа
Контрольный знак символа должен присутствовать в символе как последний знак символа перед знаком Stop. Алгоритм его вычисления определен в приложении А, раздел А.1. Контрольный знак символа не указывается в представлении для визуального чтения и не должен передаваться декодером.
4.4 Требования к размерам
4.4.1 Номинальная ширина модуля (X)
Этот размер должен быть определен в нормативном документе по применению в зависимости от возможностей оборудования для производства и считывания символов, а также в соответствии с общими требованиями применения (см. 4.7.1).
Значение должно быть постоянным для всего символа.
4.4.2 Свободная зона
Минимальная ширина свободной зоны (слева и справа от символа Code 128): 10.
4.4.3 Длина символа
Длину символа Code 128, включая свободные зоны, рассчитывают следующим образом:
,
где - длина символа;
- число знаков символа (включая контрольный знак символа);
- ширина узкого элемента, мм;
- ширина свободной зоны, мм.
Примечание - Необходимые для применения правила или алгоритм, позволяющий вычислить число знаков символа для использования в вышеприведенной формуле, приведены в приложении Е.
4.5 Рекомендуемый алгоритм декодирования
Системы считывания штрихового кода разработаны таким образом, чтобы благодаря соответствующим алгоритмам можно было считывать несовершенные символы. В настоящем подразделе приведен рекомендуемый алгоритм декодирования, используемый для вычисления значения декодируемости по ISO/IEC 15416.
Алгоритм содержит следующие этапы декодирования каждого знака, закодированного в штриховом коде:
1) Рассчитывают восемь значений ширины*: , , , , , , и (см. рисунок 5).
_________________
* Размер - измеренная ширина знака символа, - измеренная ширина от края элемента до подобного края другого элемента, - измеренная ширина штриха.
Рисунок 5 - Декодирование размеров
2) Преобразуют размеры , , и в нормализованные значения , , и , которые представляют суммарную ширину () этих размеров в модулях. Для значений используют следующий метод:
если , то =2;
если , то =3;
если , то =4;
если , то =5;
если , то =6;
если , то =7.
В остальных случаях знак содержит ошибку.
3) Находят знак в таблице декодирования (см. таблицу 2), используя в качестве ключа четыре значения , , и .
4) Определяют значение , обеспечивающее самоконтроль знака. Значение содержится в таблице вместе с найденным знаком и должно быть равно сумме модулей в штрихах этого знака.
5) Проверяют соотношение:
.
В остальных случаях знак содержит ошибку.
При вычислениях косвенно используется паритет знака для обнаружения всех ошибок декодирования, которые могут быть вызваны отдельными несистематическими ошибками по краям одного модуля.
При использовании вышеуказанных пяти этапов декодируют первый знак. Если первым знаком является знак Start, продолжают декодирование символа в нормальном прямом направлении. Если это не знак Start, то его декодируют как знак Stop и проводят попытку декодирования всех последующих знаков в обратном направлении.
После того как все знаки были декодированы, проверяют наличие действительных знаков Start и Stop и правильность контрольного знака символа.
Знаки символа переводят в соответствующие знаки данных из кодовых наборов А, В или С в соответствии с требованиями, установленными для знаков Start, Code и знака Shift, используемых в символе.
Кроме того, выполняют прочие вторичные проверки: свободных зон, ускорения луча, абсолютной синхронизации, размеров, и т.д., которые считаются необходимыми и соответствующими для конкретного устройства считывания и планируемой среды применения.
Примечание - В указанном алгоритме символ декодируют с использованием измерений "от края до подобного края" для измерений (е), а также дополнительного измерения совокупной ширины трех штрихов.
Таблица 2 - Расстояния между краями для декодирования Code 128
в модулях
Значение знака символа | Значение знака символа | |||||||||||
00 | 3 | 3 | 4 | 4 | 6 | 14 | 3 | 4 | 4 | 5 | 6 | |
01 | 4 | 4 | 3 | 3 | 6 | 15 | 2 | 4 | 5 | 4 | 6 | |
02 | 4 | 4 | 4 | 4 | 6 | 16 | 3 | 5 | 4 | 3 | 6 | |
03 | 3 | 3 | 3 | 4 | 4 | 17 | 3 | 5 | 5 | 4 | 6 | |
04 | 3 | 3 | 4 | 5 | 4 | 18 | 4 | 5 | 5 | 3 | 6 | |
05 | 4 | 4 | 3 | 4 | 4 | 19 | 4 | 3 | 2 | 4 | 6 | |
06 | 3 | 4 | 4 | 3 | 4 | 20 | 4 | 3 | 3 | 5 | 6 | |
07 | 3 | 4 | 5 | 4 | 4 | 21 | 3 | 4 | 5 | 3 | 6 | |
08 | 4 | 5 | 4 | 3 | 4 | 22 | 4 | 5 | 4 | 2 | 6 | |
09 | 4 | 3 | 3 | 3 | 4 | 23 | 4 | 3 | 3 | 4 | 8 | |
10 | 4 | 3 | 4 | 4 | 4 | 24 | 4 | 2 | 3 | 4 | 6 | |
11 | 5 | 4 | 3 | 3 | 4 | 25 | 5 | 3 | 2 | 3 | 6 | |
12 | 2 | 3 | 4 | 5 | 6 | 26 | 5 | 3 | 3 | 4 | 6 | |
13 | 3 | 4 | 3 | 4 | 6 | 27 | 4 | 3 | 4 | 3 | 6 |
Окончание таблицы 2
Значение знака символа | Значение знака символа | |||||||||||
28 | 5 | 4 | 3 | 2 | 6 | 68 | 5 | 5 | 3 | 4 | 4 | |
29 | 5 | 4 | 4 | 3 | 6 | 69 | 2 | 3 | 4 | 3 | 4 | |
30 | 3 | 3 | 3 | 3 | 6 | 70 | 2 | 3 | 6 | 5 | 4 | |
31 | 3 | 3 | 5 | 5 | 6 | 71 | 3 | 4 | 3 | 2 | 4 | |
32 | 5 | 5 | 3 | 3 | 6 | 72 | 3 | 4 | 6 | 5 | 4 | |
33 | 2 | 2 | 4 | 5 | 4 | 73 | 5 | 6 | 3 | 2 | 4 | |
34 | 4 | 4 | 2 | 3 | 4 | 74 | 5 | 6 | 4 | 3 | 4 | |
35 | 4 | 4 | 4 | 5 | 4 | 75 | 6 | 5 | 3 | 3 | 4 | |
36 | 2 | 3 | 5 | 4 | 4 | 76 | 4 | 3 | 2 | 2 | 4 | |
37 | 4 | 5 | 3 | 2 | 4 | 77 | 5 | 4 | 4 | 2 | 8 | |
38 | 4 | 5 | 5 | 4 | 4 | 78 | 6 | 5 | 2 | 2 | 4 | |
39 | 3 | 2 | 4 | 4 | 4 | 79 | 4 | 7 | 5 | 2 | 6 | |
40 | 5 | 4 | 2 | 2 | 4 | 80 | 2 | 2 | 3 | 6 | 6 | |
41 | 5 | 4 | 4 | 4 | 4 | 81 | 3 | 3 | 2 | 5 | 6 | |
42 | 2 | 3 | 3 | 4 | 6 | 82 | 3 | 3 | 3 | 6 | 6 | |
43 | 2 | 3 | 5 | 6 | 6 | 83 | 2 | 5 | 6 | 3 | 6 | |
44 | 4 | 5 | 3 | 4 | 6 | 84 | 3 | 6 | 5 | 2 | 6 | |
45 | 2 | 4 | 4 | 3 | 6 | 85 | 3 | 6 | 6 | 3 | 6 | |
46 | 2 | 4 | 6 | 5 | 6 | 86 | 5 | 2 | 3 | 3 | 6 | |
47 | 4 | 6 | 4 | 3 | 6 | 87 | 6 | 3 | 2 | 2 | 6 | |
48 | 4 | 4 | 4 | 3 | 8 | 88 | 6 | 3 | 3 | 3 | 6 | |
49 | 3 | 2 | 4 | 6 | 6 | 89 | 3 | 3 | 3 | 5 | 8 | |
50 | 5 | 4 | 2 | 4 | 6 | 90 | 3 | 5 | 5 | 3 | 8 | |
51 | 3 | 4 | 4 | 2 | 6 | 91 | 5 | 3 | 3 | 3 | 8 | |
52 | 3 | 4 | 6 | 4 | 6 | 92 | 2 | 2 | 2 | 5 | 6 | |
53 | 3 | 4 | 4 | 4 | 8 | 93 | 2 | 2 | 4 | 7 | 6 | |
54 | 4 | 2 | 2 | 3 | 6 | 94 | 4 | 4 | 2 | 5 | 6 | |
55 | 4 | 2 | 4 | 5 | 6 | 95 | 2 | 5 | 5 | 2 | 6 | |
56 | 6 | 4 | 2 | 3 | 6 | 96 | 2 | 5 | 7 | 4 | 6 | |
57 | 4 | 3 | 3 | 2 | 6 | 97 | 5 | 2 | 2 | 2 | 6 | |
58 | 4 | 3 | 5 | 4 | 6 | 98 | 5 | 2 | 4 | 4 | 6 | |
59 | 6 | 5 | 3 | 2 | 6 | 99 | 2 | 4 | 4 | 5 | 8 | |
60 | 4 | 5 | 5 | 2 | 8 | 100 | 2 | 5 | 5 | 4 | 8 | |
61 | 4 | 3 | 5 | 5 | 4 | 101 | 4 | 2 | 2 | 5 | 8 | |
62 | 7 | 4 | 2 | 2 | 6 | 102 | 5 | 2 | 2 | 4 | 8 | |
63 | 2 | 2 | 3 | 4 | 4 | 103 | 3 | 2 | 5 | 5 | 4 | |
64 | 2 | 2 | 5 | 6 | 4 | 104 | 3 | 2 | 3 | 3 | 4 | |
65 | 3 | 3 | 2 | 3 | 4 | 105 | 3 | 2 | 3 | 5 | 6 | |
66 | 3 | 3 | 5 | 6 | 4 | 5 | 6 | 4 | 2 | 6 | ||
67 | 5 | 5 | 2 | 3 | 4 | 3 | 2 | 2 | 4 | 6 | ||
Примечание - Значения знака символа следует применять для декодирования в прямом направлении. Значения знака символа применяют к шести крайним правым элементам знака символа Stop при сканировании в обратном направлении. |
4.6 Качество символа
4.6.1 Спецификации испытаний
Порядок верификации каждого из символов, спецификации которых определены в настоящем стандарте, должен соответствовать спецификации испытаний согласно ISO/IEC 15416, устанавливающей стандартизованную методику измерения и классификации символов штрихового кода, а также требованиям, установленным в 4.6.2 и 4.6.3. В ISO/IEC 15416 сформулированы условия, при которых возможно проведение измерений, и определены методы измерения полного класса качества символа, основанные на характеристиках символа штрихового кода. Рекомендуемый алгоритм декодирования определен в 4.5 и должен использоваться для оценки параметров "декодирование" и "декодируемость" по ISO/IEC 15416.
Полный класс качества символа должен быть выражен в виде:
1,5/10/660,
где 1, 5* - полный класс качества символа;
________________
* Текст документа соответствует оригиналу. - .
10 - ссылочный номер измеренной апертуры (в данном случае диаметром 0,25 мм);
660 - длина волны в спектральном максимуме интенсивности отраженного оптического излучения, в нанометрах.
ISO/IEC 15416 допускает возможность установления дополнительных критериев годен/брак в соответствии со спецификацией символики. Для символики Code 128 дополнительные критерии установлены в 4.6.3. Отдельный профиль сканирования, который не сможет соответствовать этим требованиям, следует определять как соответствующий классу качества символа 0.
4.6.2 Декодируемость
Для вычисления значения декодируемости применяют следующие правила, являющиеся дополнительными к указанным в ISO/IEC 15416.
Осуществляют подстановку для в формуле
и вычисляют .
Вычисляют по формуле
,
где: - число темных модулей в знаке;
- общая ширина знака;
- совокупная ширина штрихов в знаке.
Примечание 1 - и должны быть в одних и тех же единицах.
является меньшей из величин и .
Примечание 2 - Следует обратить внимание, что знак Stop включает в себя дополнительный завершающий штрих. При измерении декодируемости знак Stop должен быть проверен дважды, сначала с использованием шести крайних левых элементов, а затем - шести самых правых элементов справа налево. Оба набора из шести элементов по ширине должны быть эквивалентны стандартному знаку.
4.6.3 Дополнительный параметр - свободные зоны
ISO/IEC 15416 предусматривает, что в спецификации символики должны содержаться дополнительные критерии оценки. Для каждой стороны символа Code 128 минимальный размер свободной зоны равен 10*. Обе свободные зоны - левая и правая в каждом профиле отражения при сканировании - должны быть измерены и оценены по ISO/IEC 15416 следующим образом:
________________
* - средняя ширина нанесенных узких элементов.
Свободная зона : класс 4.
Свободная зона : класс 0.
Примечание - В данном подразделе требования базируются на современном, более актуальном подходе, используемом при измерении параметров, при котором применение размера считается предпочтительнее применения размера .
4.7 Параметры применения, определяемые пользователем
Параметры применения, определяемые пользователем, приведены в настоящем подразделе и приложении G.
4.7.1 Параметры символики и данных
Нормативные документы по применению должны учитывать следующие параметры:
a) выборкe поднабора из кодового набора знаков (при необходимости);
Примечание - В настоящем стандарте рекомендуется не устанавливать ограничений для одного кодового набора, например исключительного использования кодового набора А при формировании символа, т.к. часто это не дает никакого практического преимущества. Однако ограничения по применению какого-либо одного кодового набора актуальны, например, при кодировании только цифровых данных;
b) число знаков данных в символе, которое может быть постоянным, переменным или переменным в пределах установленного максимума;
c) должен ли использоваться контрольный знак данных (в дополнение к обязательному контрольному знаку символа), и если должен, то алгоритм его вычисления. Типовое устройство считывания не проверяет контрольный знак данных, а передает его как обычные данные;
d) может или не может быть определено наименьшее значение размера или диапазон значений размера при условии, что соответствующий минимальный класс качества символа (с установленными измерительной апертурой и длиной волны излучения) определен;
e) наименьшая высота штриха;
f) наименьшая ширина свободной зоны более наименьшего значения 10, если ожидаемые условия сканирования требуют этого, например сканирование световым карандашом символов размером менее определенного значения;
g) рекомендуемое расширение набора знаков для использования со знаком FNC4;
h) использование идентификаторов символики в передаваемых данных (см. 4.8).
4.7.2 Спецификации оптических параметров
Символ штрихового кода сканируют в порядке, установленном для конкретного применения, что необходимо для точного определения его оптических характеристик. Набор параметров должен быть приведен в стандарте по применению и должен включать в себя:
- длину волны в спектральном максимуме интенсивности отраженного излучения;
- спектральную ширину полосы частот по уровню половинной мощности, в которой будет обеспечена нормальная работа сканера для считывания символа;
- размер светового пятна сканера;
- параметры отражения от штрихов и пробелов;
- условия проведения оптических измерений;
- степень допустимого несовершенства символа штрихового кода.
Пример параметров применения, определяемых пользователем, приведен в приложении G.
4.7.3 Спецификация испытаний
Спецификации по применению должны устанавливать минимальный полный допустимый класс качества символа (включая минимальный класс качества, необходимую измерительную апертуру и длину волны отраженного излучения, используемого при измерении) при измерениях, проводимых в соответствии с ISO/IEC 15416.
Пример
1,5/10/660
где 1,5 - полный класс качества символа;
10 - ссылочный номер измерительной апертуры (в настоящем примере диаметр 0,25 мм);
660 - длина волны в спектральном максимуме интенсивности отраженного излучения в нанометрах.
4.8 Передаваемые данные
При декодировании символа Code 128 данные, входящие в него, должны включать в себя значения байтов знаков данных. Перед данными должен присутствовать в качестве префикса идентификатор символики (в соответствии с приложением С). Знаки Start и Stop, функциональные знаки, знаки Code и Shift, а также контрольный знак символа не должны содержаться в передаваемых данных, исключая случаи, установленные для знака FNC1, приведенные в приложении В, раздел В4.
Приложение А (обязательное). Дополнительные свойства Code 128
Приложение А
(обязательное)
А.1 Контрольный знак символа
Контрольный знак символа Code 128 рассчитывают согласно следующему алгоритму:
1) определяют значение знака символа по таблице 1;
2) каждой позиции знака символа присваивают весовой коэффициент. Знаку Start присваивают весовой коэффициент 1. Затем начиная слева от первого знака символа, следующего за знаком Start, весовые коэффициенты 1, 2, 3, 4, ..., для всех последующих знаков символа, за исключением контрольного знака символа; обозначает число знаков символа, представляющих данные или специальную информацию в символе, за исключением знаков Start/Stop и контрольного знака символа.
Примечание - Знаку Start и первому знаку символа после знака Start присваивают весовой коэффициент "1";
3) значение каждого знака символа умножают на его весовой коэффициент;
4) все произведения, определенные на этапе 3), суммируют;
5) сумму произведений делят на 103;
6) остаток, полученный после вычисления на этапе 5), является значением контрольного знака символа.
Пример порядка вычисления значения контрольного знака символа для данных "AIM1234":
Знаки | Start B | A | I | M | Code C | 12 | 34 |
Значения знаков символа (этап 1) | 104 | 33 | 41 | 45 | 99 | 12 | 34 |
Весовые коэффициенты (этап 2) | 1 | 1 | 2 | 3 | 4 | 5 | 6 |
Произведения (этап 3) | 104 | 33 | 82 | 135 | 396 | 60 | 204 |
Сумма произведений (этап 4) | 1014 | ||||||
Деление на 103 (этап 5) | 1014/103=9 | ||||||
Остаток, равный значению контрольного знака символа | 87 |
Контрольный знак символа должен быть размещен сразу после окончания данных или специального знака и перед знаком Stop.
Контрольный знак символа не должен присутствовать в представлении для визуального чтения и передаваться декодером.
А.2 Представление для визуального чтения*
________________
* Представление для визуального чтения также называют визуальным представлением.
Представление для визуального чтения знаков данных (должно соответствовать данным, передаваемым декодером) должно быть напечатано вместе с кодирующим эти данные символом Code 128. Знаки Start/Stop и специальные знаки печататься не должны. Размеры знаков и шрифт не регламентируются, представление может быть напечатано в любой окружающей символ области без нарушения границ свободной зоны (см. 4.4.2).
Приложение В (обязательное). Особые правила для функционального кода 1 (FNC1)
Приложение В
(обязательное)
В.1 Применение знака FNC1 в первой позиции, зарезервированное для использования в системе GS1*
________________
* В оригинале ISO/IEC 15417 ошибочно указано EAN/UCC.
В соответствии с соглашением между международными организациями AIM, Inc. и GS1 (прежнее наименование - EAN International (ЕАН Интернейшнл) и Uniform Code Council (UCC)) использование знака FNC1 в символах Code 128 в позиции первого знака символа после знака Start зарезервировано исключительно для системы GS1.
В таких символах данные, расположенные после знака FNC1, должны соответствовать структурам данных, установленным международной организацией GS1, разработавшей международный стандарт по применению символов Code 128 для кодирования данных в широком диапазоне определенных в стандарте категорий. Этот стандарт полностью приведен в Общих спецификациях GS1.
Адреса глобальных офисов организации GS1:
GS1
Blue Tower, Avenue Louise 326, bte 10,
B-1050 BRUSSELS
Belgium
GS1
Princeton Pike Corporate Center
1009 Lennox Drive, Suite 202
Lawrenceville, NJ 08648
USA
Актуализированная информация о применении указанных символов в системе GS1 может быть получена в указанных офисах или в национальных организациях GS1** (именуемых в соответствии с правилами GS1, например GS1 US, GS1 Netherlands).
________________
** Наименования и адреса национальных организаций GS1, действующих в странах - членах МГС, приведены в дополнительном приложении ДБ.
Применение знака FNC1 в позиции второго знака символа не допускается в символах, формируемых в соответствии с требованиями GS1.
В.2 Применение знака FNC1 во второй позиции, зарезервированное для использования в AIM Global
В соответствии с соглашением между AIM Global и другими организациями, использование знака FNC1 в символах Code 128 в позиции второго знака символа после знака Start зарезервировано для обозначения символов, соответствующих определенным применениям, там, где существует необходимость однозначного распознавания одних символов от других символов Code 128. Следующие знаки являются допустимыми в позиции первого знака символа: цифры от 00 до 99 в кодовом наборе С, прописные буквы от А до Z, и строчные буквы от а до z. Все другие знаки, располагаемые в данной позиции, формируют ошибочный символ.
Подробности применения знака FNC1 можно получить в AIM, Inc. по адресу:
AIM Global
125 Warrendale-Bayne Road
Suite 100
Warrendale, PA 15086
USA
В.3 Другие варианты применения знака FNC1
Знак FNC1 может использоваться в качестве контрольного знака символа.
Допускается применение знака FNC1, если он располагается на третьей или последующих позициях и выступает в качестве разделителя полей данных, при этом он передается как знак GS по ISO/IEC 646 с десятичным значением 29.
В.4 Передаваемые данные
При любых применениях, в которых используются символы Code 128 со знаком FNC1 в первой или второй позиции данных, должна быть обеспечена передача идентификатора символики. Если знак FNC1 используют в первой или второй позиции, не допускается его представление в передаваемом сообщении, хотя его присутствие обозначается значениями знака-модификатора 1 или 2 соответственно в идентификаторе символики.
Когда FNC1 используют во второй позиции данных, ближайшие предшествующий и последующие знаки символа следует передавать как при отсутствии знака FNC1.
Знак FNC1 в позициях третьего или последующих знаков следует передавать как управляющий знак GS с десятичным значением 29.
Приложение С (обязательное). Идентификаторы символики
Приложение С
(обязательное)
Идентификатор символики Code 128, который может быть присоединен как префикс при декодировании данных запрограммированным соответствующим образом декодером штрихового кода, установлен в ISO/IEC 15424 и имеет вид:
,
где - знак по ISO/IEC 646 с десятичным значением 93;
- знак кода, присвоенный символике Code 128;
- значение знака-модификатора (см. таблицу С.1).
Таблица С.1 - Значения знака-модификатора для символики Code 128
Вариант обработки | |
0 | Стандартная последовательность данных. Знак FNC1 отсутствует в позиции первого и второго знака символа после знака Start |
1 | Последовательность данных GS1-128 (обозначаемая также UCC/EAN-128). Знак FNC1 находится в позиции первого знака символа после знака Start |
2 | Знак FNC1 находится в позиции второго знака символа после знака Start |
4 | Соединение в соответствии с требованиями международного общества переливания крови International Society for Blood Transfusion (ISBT-128) - следуют связанные данные |
Эту информацию не следует кодировать в символе штрихового кода, однако она должна генерироваться декодером после декодирования и передаваться как преамбула к сообщению данных.
Приложение D (справочное). Соотношение значений знаков символа и ASCII
Приложение D
(справочное)
________________
* ASCII является национальной версией США набора знаков по ISO/IEC 646, состоящего из набора знаков GO по ISO/IEC 646 и набора знаков СО по ISO/IEC 6429, в котором знаки с десятичными значениями от 28 до 31 соответствуют знакам FS, GS, RS и US соответственно.
Для преобразования значения знака символа () к десятичному значению знака ASCII или наоборот применимы следующие соотношения для кодового набора А и кодового набора В:
Для кодового набора А:
если , то
десятичное значение знака по ASCII равно ;
если , то
десятичное значение знака по ASCII равно .
Для кодового набора В:
если , то
десятичное значение знака по ASCII равно .
Результаты значений приведены в таблице 1.
Примечание - В случае включения знака FNC4 в последовательность знаков данных его наличие предусматривает увеличение десятичного значения знака ASCII для следующего за ним знака или знаков на 128 в соответствии с 4.3.4.2, перечисление d).
Приложение Е (справочное). Использование знаков Start, Code и Shift для минимизации длины символа
Приложение Е
(справочное)
Одни и те же данные могут быть представлены различными символами Code 128 с помощью различных комбинаций знаков Start, Code и Shift.
Следующие правила по минимизации числа знаков символа, необходимых для представления заданной строки данных (и соответственно общей длины символа), как правило, должны использоваться в управляющем программном обеспечении печатающего устройства:
1) определяют знак Start следующим образом:
1а) если данные состоят из двух цифр, используют знак Start С;
1b) если данные начинаются с четырех или более числовых знаков данных, используют знак Start С;
1с) если управляющий знак (например, NUL) находится в данных перед любым знаком нижнего регистра, используют знак Start А;
1d) в остальных случаях используют знак Start В;
2) если используют знак Start С и данные начинаются с нечетного количества числовых знаков данных, то вставляют знак Code А или Code В перед последней цифрой в соответствии с вышеуказанными правилами 1с) и 1d) для выбора кодового набора А или В;
3) если четыре или более числовых знака данных объединены в кодовых наборах А или В, то:
3а) при наличии четного числа числовых знаков данных вставляют знак Code С перед первым числовым знаком, чтобы перейти на кодовый набор С;
3b) если имеется нечетное число числовых знаков данных, то вставляют знак Code С непосредственно после первого числового знака, чтобы произвести изменение на кодовый набор С;
4) если в данных присутствует кодовый набор В и управляющий знак, то:
4а) если после этого знака в данных следует знак в нижнем регистре, за которым стоит другой управляющий знак, вставляют знак Shift перед управляющим знаком;
4b) в остальных случаях ставят знак Code А перед управляющим знаком, чтобы произвести изменение на кодовый набор А.
5) если в данных кодового набора А встречается знак в нижнем регистре, то:
5а) если в данных после этого знака следует управляющий знак, за которым стоит другой знак в нижнем регистре, вставляют знак Shift перед знаком нижнего регистра;
5b) в противном случае ставят знак Code В перед знаком нижнего регистра, чтобы произвести изменение на кодовый набор В;
6) если в данных кодового набора С встречается нечисловой знак, ставят знак Code А или знак Code В перед этим знаком, следуя правилам 1с) и 1d) для выбора кодового набора А или В.
Примечания
1 В настоящих правилах термин "знак нижнего регистра" используют для удобства и подразумевают любой знак кодового набора В символа Code 128 со значением знака символа от 64 до 95 (десятичные значения знаков от 96 до 127 по ISO/IEC 646), то есть все строчные буквы алфавита, а также знаки "`", "{", "", "}", "~" и "DEL". Термин "управляющий знак" означает любой знак из кодового набора А символа Code 128 со значениями знака символа от 64 до 95 (десятичные значения знаков от 00 до 31 по ISO/IEC 646).
2 Если знак FNC1 стоит в первой позиции после знака Start или в нечетной позиции внутри числового поля, то для установления соответствующего набора знаков он должен обрабатываться как две цифры.
3 Если данные содержат знаки, десятичные значения которых превышают 127 (по ISO/IEC 646), то для определения соответствующего кодового набора А или В необходимо вычесть значение 128 из их десятичных значений. При наличии последовательности от одного до четырех указанных знаков, (один или два из которых располагаются в конце строки данных) наиболее эффективно предварять каждый из них знаком FNC4. Для пяти таких знаков (три из которых располагаются в конце строки данных) или большего числа указанных знаков более эффективным является переключение в режим применения кодовых таблиц расширения ISO/IEC 646 с использованием двух знаков FNC4.
Приложение F (справочное). Набор знаков по ISO/IEC 8859-1 (латинский алфавит номер 1)
Приложение F
(справочное)
________________
* В рамках замкнутых применений возможно кодирование букв кирилловского алфавита, например в соответствии с набором знаков по ISO/IEC 8859-5 с использованием приведенного в данном приложении порядка кодирования.
Таблица соответствия знаков второй половины набора кодовых знаков байтам с десятичными значениями от 160 до 255 включительно по ISO/IEC 8859-1 представлено в таблице F.1. Для знаков с десятичными значениями от 128 до 159 включительно отсутствуют графические представления. Таблица F1 соответствует строке с десятичным значением 00 базовой многоязычной матрицы по ISO/IEC 10646 для ячеек с десятичными значениями от 160 до 255 включительно.
В соответствии с 4.3.4.2, перечисление d настоящего стандарта эти знаки могут быть представлены в символе Code 128 в соединении со знаком FNC4 на основании соотношений:
,
где - десятичное значение знака по ISO/IEC 646**;
________________
** См. значение в графе "Значение по ISO/IEC 646 в наборе В".
- десятичное значение знака данных по таблице F.1.
Так как в результате получают десятичные значения в диапазоне от 32 до 127**, которые соответствуют знакам кодового набора В, следующее отношение также верно, если его применяют к набору знаков В:
________________
** См. значение в графе "Значение по ISO/IEC 646 в наборе В".
,
где - значение знака символа по таблице 1*** (кодовый набор В);
- значение знака данных по таблице F.1.
________________
*** См. значение в графе "Значение знака символа".
Таблица F.1 - Вторая часть набора знаков по ISO/IEC 8859-1
Приложение G (справочное). Параметры применения, определяемые пользователем
Приложение G
(справочное)
G.1 Классы качества
Нормативные документы, регламентирующие требования по применению, должны определять минимальный класс качества по ISO/IEC 15416.
С помощью рекомендаций, изложенных в ISO/IEC 15416, могут быть определены минимальные значения измеряемых параметров символа, связанных с полным классом символа.
G.2 Показатели размеров
В нормативном документе, устанавливающем конкретные требования по применению символов штрихового кода, который можно рассматривать как руководство пользователя, могут быть заданы рекомендуемые значения или диапазон значений размера в зависимости от условий применения, характеристик оборудования для нанесения символов штрихового кода и считывающих устройств. Несоответствие символа штрихового кода требованиям к минимальному размеру , установленным в указанных нормативных документах по применению, не может служить причиной отклонения символа.
При ручном сканировании рекомендуется, чтобы наименьший размер * соответствовал большему из двух значений - 5 мм или 15% длины символа.
________________
* - установленная высота элементов символа штрихового кода Code 128.
Длина символа штрихового кода Code 128, включая минимальные свободные зоны, может быть рассчитана по формуле
,
где - ширина символа;
- ширина самого узкого элемента;
- суммарное число знаков Start, специальных знаков, контрольного знака символа и знака Stop, а также знаков данных, не включенных в ;
- число цифровых знаков данных, кодируемых с двойной плотностью (кодовый набор С).
Приложение Н (справочное). Рекомендации по использованию Code 128
Приложение Н
(справочное)
Н.1 Совместимость для автоматического распознавания
Символика штрихового кода Code 128 может быть прочитана соответствующим образом запрограммированными декодерами штрихового кода, которые автоматически отличают ее от других символик штрихового кода.
Для повышения надежности считывания действующий набор декодируемых символик штрихового кода, необходимый для конкретного применения, должен быть ограничен.
Н.2 Системные рекомендации
С целью обеспечения нормального функционирования какой-либо системы штрихового кодирования необходимо, чтобы различные ее компоненты, такие как принтеры, ярлыки (этикетки), сканеры, связанные с процессом штрихового кодирования, представляли собой взаимоувязанные компоненты этой системы, при этом их характеристики были бы должным образом согласованы.
Н.3 Рекомендации для печати
Для обеспечения печати символов символики штрихового кода Code 128 с помощью устройств печати растровых изображений в настоящем подразделе приведены рекомендации, которые применимы ко всем символикам штрихового кода.
В настоящем разделе приведены рекомендации для печати символики штрихового кода Code 128 с помощью устройств печати растровых изображений, которые применимы ко всем символикам штрихового кода.
Н.3.1 Печать растровых изображений
Графическое программное обеспечение, используемое для создания символов штриховых кодов с помощью устройств печати растровых изображений, должно обеспечивать масштабирование каждого штриха и пробела пропорционально разрешению (пикселей/единица длины) используемого печатающего устройства. Для декодирования символик штрихового кода, измерение элементов символа которых основано на принципе "от края до подобного края", таких как символика штрихового кода Code 128, число пикселей в составе каждого знака символа должно быть фиксированным и целым числом, кратным числу модулей в знаке символа. В символе штрихового кода Code 128, для знаков символа со значениями* от 0 до 105 число модулей должно быть равно 11, и для знака Stop - 13. Поэтому конкретные печатающие устройства могут воспроизвести только определенный диапазон размеров .
________________
* См. графу "Значение знака символа" в таблице 1.
Приращение (или сокращение) ширины одного штриха должно быть пропорционально компенсировано во всех штрихах и пробелах символа. Это может быть достигнуто путем замены целого числа темных пикселей на светлые или светлых на темные единообразно для каждой пары "штрих-пробел" в символе и для последнего штриха в символе. Например все темные пиксели с одного края каждого штриха в символе могут быть заменены на светлые или темные пиксели по обоим краям каждого штриха в символе могут быть заменены на светлые при условии, что разрешающая способность устройства печати допускает такую замену. Приемлемая замена любого набора темных пикселей на светлые или светлых на темные обеспечивается путем последовательного ее выполнения по всему символу без изменения размеров "от края до подобного края" или общей ширины знака символа. Невыполнение этих принципов приводит к снижению качества символов и часто приводит к невозможности их считывания.
Программное обеспечение общего назначения для печати, предназначенное для поддержки широкого спектра печатающих устройств, должно обеспечивать пользователю возможность настройки размера и приращения или сокращения ширины штриха.
Пример для программистов
В файлах цифрового изображения символов штрихового кода указанные принципы могут быть сведены к следующим правилам:
1) преобразуют желаемое увеличение символа или размера к размеру модуля в виде числа пикселей, округляя до ближайшего целого числа;
2) определяют число пикселей, соответствующее требуемой компенсации для единообразного приращения ширины штриха, и округляют его до ближайшего большего целого числа;
3) применяют вышеуказанные результаты для определения числа пикселей в каждом штрихе и пробеле символа.
Пример - При использовании печатающего устройства с разрешающей способностью 24 точки/мм для вывода на него файлов цифрового изображения символа штрихового кода, имеющего размер X, равный 0,27 мм, с последующим уменьшением ширины штриха на 0,06 мм определяют:
- размер модуля как 24 точки/мм 0,27 мм/модуль = 6,5 пикселей. Это значение округляют в меньшую сторону до 6 пикселей/модуль;
- компенсацию приращения штриха как 0,06 мм 24 пикселя/мм = 1,4 пикселей. Это значение округляют в большую сторону до 2 пикселей.
В результате этого процесса штрихи и пробелы имеют следующие числа пикселей, приведенные в таблице Н.1.
Таблица Н.1 - Скорректированное число пикселей в итоговом размере изображения модуля при сокращении ширины штриха
Число модулей | Число пикселей | |
В штрихах | В пробелах | |
1 | 4 | 8 |
2 | 10 | 14 |
3 | 16 | 20 |
4 | 22 | 26 |
Н.3.2 Руководство для пользователей программного обеспечения для печати растровых изображений
При первоначальной печати символа в системе печати, состоящей из программного обеспечения для печати символов штрихового кода и печатающего устройства, пользователь согласно требованиям ISO/IEC 15416 должен проверить, что напечатанный символ соответствует требуемому классу качества печати и размеру . Если напечатанный символ не соответствует требуемому классу качества, пользователь может увеличить размер или изменить приращение или сокращение ширины штриха. Если размер увеличен, пользователь должен проверить выполнение требований по наличию минимального размера свободных зон. Процесс повторяют до тех пор, пока не будет выполнено условие по достижению необходимого качества печати символа. Следует учитывать, что не все системы печати могут обеспечить создание символов штрихового кода с требуемым качеством печати при малых значениях размера .
Н.3.3 Рекомендации по управлению процессом печати
Для управления процессом создания символов штрихового кода необходимо оценить среднее приращение или сокращение ширины штриха и выполнить соответствующие действия по их компенсации. На параметр "декодируемость", измеренный в соответствии с ISO/IEC 15416, воздействует как систематическое приращение или сокращение ширины штриха, так и изменения в размерах "от края до подобного края".
Приложение ДА (справочное). Сведения о соответствии ссылочных международных стандартов межгосударственным стандартам
Приложение ДА
(справочное)
Сведения о соответствии ссылочных международных стандартов ссылочным межгосударственным стандартам приведены в таблице ДА.1.
Таблица ДА.1 - Сведения о соответствии межгосударственных стандартов ссылочным межгосударственным стандартам
Обозначение и наименование | Степень соответствия | Обозначение и наименование соответствующего межгосударственного стандарта |
ISO/IEC 646:1991 | NEQ | ГОСТ 27463-87 "Системы обработки информации. 7-битные кодированные наборы символов" |
ISO/IEC 8859-1 | - | * |
ISO/IEC 15416 | MOD | ГОСТ 30832-2002 (ISO/IEC 15416-2000) "Автоматическая идентификация. Кодирование штриховое. Линейные символы штрихового кода. Требования к испытаниям качества печати" |
ISO/IEC 15424 | NEQ | ГОСТ 30640-99 (ЕН 796-95) "Автоматическая идентификация. Штриховое кодирование. Идентификаторы символик" |
ISO/IEC 19762-1 | - | |
ISO/IEC 19762-2 | - | |
* Соответствующий межгосударственный стандарт отсутствует. До его принятия рекомендуется использовать перевод на русский язык данного международного стандарта.
|
__________________
В Российской Федерации не действует. Пользователям Российской Федерации следует применять ГОСТ Р 51294.1-99 "Автоматическая идентификация. Кодирование штриховое. Идентификаторы символик".
Пользователи Российской Федерации могут применять ГОСТ Р ИСО/МЭК 19762-1-2011 "Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 1. Общие термины в области АИСД".
Пользователи Российской Федерации могут применять ГОСТ Р ИСО/МЭК 19762-2-2011 "Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 2. Оптические носители данных (ОНД)".
Приложение ДБ (справочное). Перечень национальных организаций GS1 в странах - членах МГС
Приложение ДБ
(справочное)
На территории стран - членов Межгосударственного Совета по стандартизации, метрологии и сертификации на момент принятия настоящего стандарта действуют национальные организации GS1, сведения о которых приведены в таблице ДБ.1.
Таблица ДБ.1 - Наименования и адреса национальных организаций GS1, действующих на территории стран - членов МГС
Краткое наименование страны по МК (ИСО 3166) 004-97 | Наименование национальной организации | Адрес, телефон, факс, E-mail, web site организации | |
международное | на русском языке | ||
Азербайджан | GS1 Azerbaijan | GS1 Азербайджан | AZ 1010, г.Баку, ул.Уз.Гаджибекова, 41, офис 62-63. |
Армения | GS1 Armenia | GS1 АРМЕНИЯ | 0033, г.Ереван, пр-т Баграмяна, 64/15. |
Беларусь | GS1 Belarus | Ассоциация автоматической идентификации ГС1 Бел. | 220033, г.Минск, ул.Судмалиса, |
Грузия | GS1 Georgia | GS1 ГРУЗИЯ | 0179, г.Тбилиси, пр-т Чавчавадзе, 50. |
Казахстан | GS1 Kazakstan | GS1 КАЗАХСТАН | г.Алматы, ул.Байзакова, 299. |
Кыргызстан | GS1 Kyrgyzstan | Ассоциация предметной нумерации GS1 Кыргызстан | 720064, г.Бишкек, ул.Ахунбаева, 42a, 3-й этаж. |
Молдова | GS1 Moldova | Национальная ассоциация автоматической идентификации GS1 МОЛДОВА | MD 2009, г.Кишинев, ул.М.Когалничану, 63, офис 52. |
Российская Федерация | GS1 Russia | Ассоциация автоматической идентификации "ЮНИСКАН/ ГС1 РУС" | 119415, Москва, а/я 4. |
Таджикистан | GS1 Tajikistan | GS1 Таджикистан | 734012, г.Душанбе, ул.Валаматзаде, 21. |
Узбекистан | GS1 Uzbekistan | GS1 УЗБЕКИСТАН | 100047, г.Ташкент, ул.Бухара, 6. |
Украина | GS1 Ukraine | Ассоциация товарной нумерации Украины "ДжиЭс1 Украина" | 04053, г.Киев, ул.Артема, 26. |
Примечания |
Библиография
[1] | ISO/IEC 10646 | Information technology - Universal Multiple-Octet Coded Character Set (UCS)* |
[ИСО/МЭК 10646 | Информационные технологии. Универсальный многооктетный набор кодированных знаков (UCS)] |
________________
* В ISO/IEC утверждена новая редакция данного стандарта со следующим обозначением и наименованием: ISO/IEC 10646:2011 "Information technology. Universal Coded Character Set (UCS)".
УДК 681.5.015:621.3.006:354 | МКС | 35.040 | П85 | IDT |
01.080.50 | ||||
Ключевые слова: информационные технологии, технологии автоматической идентификации и сбора данных, спецификация символики, штриховой код, символика штрихового кода Code 128 |
Электронный текст документа
и сверен по:
официальное издание
М.: Стандартинформ, 2018