Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Этикетка со штрих-кодом Code 39
* ВИКИПЕДИЯ * в кодировке Code 39

Code 39 (также известный как Alpha39 , Code 3 of 9 , Code 3/9 , Type 39 , USS Code 39 или USD-3 ) представляет собой дискретную символику штрих-кода переменной длины .

Спецификация Code 39 определяет 43 символа, состоящие из прописных букв (от A до Z), цифровых цифр (от 0 до 9) и ряда специальных символов (-,., $, /, +,% И пробел ). Дополнительный символ (обозначается '*') используется как для начального, так и для конечного разделителей. Каждый символ состоит из девяти элементов: пяти полосок и четырех пробелов. Три из девяти элементов в каждом символе являются широкими (двоичное значение 1), а шесть элементов узкими (двоичное значение 0). Соотношение ширины между узким и широким не является критическим и может быть выбрано от 1: 2 до 1: 3.

Сам штрих-код не содержит контрольной цифры (в отличие, например, от Code 128 ), но его можно рассматривать как самопроверку на том основании, что одна ошибочно интерпретированная полоса не может генерировать другой действительный символ. Возможно, наиболее серьезным недостатком Code 39 является его низкая плотность данных: для кодирования данных в Code 39 требуется больше места, чем, например, в Code 128. Это означает, что очень маленькие товары не могут быть помечены штрих-кодом на основе Code 39. Тем не менее, Code 39 все еще используется некоторыми почтовыми службами (хотя Всемирный почтовый союз рекомендует использовать Code 128 во всех случаях [1] ), и его можно декодировать практически любым считывателем штрих-кода.. Одним из преимуществ Code 39 является то, что, поскольку нет необходимости генерировать контрольную цифру, его можно легко интегрировать в существующую систему печати, добавив шрифт штрих-кода в систему или принтер, а затем распечатав необработанные данные этим шрифтом. [2]

Code 39 был разработан доктором Дэвидом Аллеем и Рэем Стивенсом из Intermec в 1974 году. Их первоначальный дизайн включал две широкие полосы и одно широкое пространство для каждого символа, что давало 40 возможных символов. Если оставить в стороне один из этих символов в качестве начального и конечного шаблона, осталось 39 символов, которые послужили источником названия Code 39. [3] Позже были добавлены четыре символа пунктуации, без использования широких полос и трех широких пробелов, расширяя набор символов до 43 символа. Код 39 позже был стандартизирован как ANSI MH 10.8 M-1983 и MIL-STD-1189. [4] Стандарт MIL-STD-1189 был отменен и заменен стандартом ANSI / AIM BC1 / 1995, Uniform Symbology Specification - Code 39. [5]

Кодировка [ править ]

* Характер представленный ниже, не является истинным кодируемый характер, но это начало и остановка символ кодекса 39. асимметрии символа позволяет читателю определить направление штрихкода сканирования. Этот код традиционно сопоставляется с символом * в шрифтах штрих-кода и часто появляется в удобочитаемом представлении рядом со штрих-кодом.

Символы Code 39

В целом, расположение двух широких полосок можно рассматривать как кодирование числа от 1 до 10, а расположение широкого пространства (которое имеет четыре возможных положения) можно рассматривать для классификации символа в одну из четырех групп ( слева направо): буквы (+30) (U – Z), цифры (+0) (1–9,0), буквы (+10) (A – J) и буквы (+20) (K– Т). Например, у буквы P (которая является 16-й буквой алфавита) полосы выровнены, чтобы представить число 6, и пробел в крайнем правом положении для выбора группы Letters (+20).

Представленное в виде цифры число «10» используется для кодирования числа ноль. Поскольку в группе букв (+30) всего шесть букв (буквы 30–35 или U – Z), остальные четыре позиции в этой группе (36–39) используются для представления трех символов (тире, точки, пробела). ), а также символ запуска / остановки.

Две широкие полосы из пяти возможных позиций кодируют число от 1 до 10 с использованием кода два из пяти со следующим числовым эквивалентом: 1, 2, 4, 7, 0. Числа суммируются. Например, число 6 кодируется как NWWNN, с широкими полосами, занимающими позиции для 2 и 4 (2 + 4 = 6). В случае NNWWN, который равен 4 + 7 = 11, ему присваивается 0 для цифр (+0) и 10 для буквенных столбцов (+10 - +30). При кодировании букв (от +10 до +30) к уравнению необходимо добавить «−1», чтобы «A» было WNNNW → 1 + 10-1 → 10, как показано в таблице.

Последние четыре символа состоят из узких полос и трех широких пробелов. Есть четыре возможных положения для одиночного узкого пространства.

В этой таблице представлена ​​спецификация Code 39. Числовое значение, присвоенное каждому символу (кроме начала / остановки), используется в алгоритме контрольной суммы, описанном ниже.

Символы разделены дополнительным узким пространством. Например, полная кодировка для одной буквы «A», которая фактически включает начальный и конечный символы как «* A *», - это «| | ▮▮ | ▮ || | ▮ | | ▮▮ |» . Код не будет правильно прочитан без этих межсимвольных пробелов. Шрифты штрих-кода всегда включают это пространство внутри глифа символа.

Code 39 mod 43 [ править ]

Код 39 иногда используется с необязательной контрольной цифрой по модулю 43 . Для его использования необходимо, чтобы эта функция была включена в считывателе штрих-кода. Код с контрольной цифрой обозначается как Code 39 mod 43 .

Чтобы вычислить это, каждому символу присваивается значение. Назначения перечислены в таблице выше и почти, но не совсем систематичны.

Вот как произвести расчет контрольной суммы :

  • Возьмите значение (от 0 до 42) каждого символа штрих-кода, исключая коды запуска и остановки.
  • Суммируйте значения.
  • Разделите результат на 43.
  • Остаток - это значение добавляемого символа контрольной суммы.

Полный код ASCII 39 [ править ]

Код 39 ограничен 43 символами. В Full ASCII Code 39 символы 0-9, AZ, «.», «-» и пробел совпадают с их представлениями в Code 39. Строчные буквы, дополнительные символы пунктуации и управляющие символы представлены последовательностями из двух символов кода. 39.

Программное обеспечение [ править ]

Это бесплатное программное обеспечение с открытым исходным кодом может создавать штрих-коды Code 39:

Ссылки [ править ]

  1. ^ В качестве одного из примеров международного стандарта см. «Идентификация почтовых отправлений - 13-значный идентификатор» (PDF) . Всемирный почтовый союз . 17 октября 2017.
  2. ^ "Google Fonts" . Google шрифты . Проверено 20 мая 2019 .
  3. Перейти ↑ Allais, DC (2006). «Мемуары AIDC» (PDF) . Архивировано из оригинального (PDF) 26 января 2013 года . Проверено 2 июня 2010 . Цитировать журнал требует |journal=( помощь )
  4. ^ "MIL-STD-1189 Стандартная символика штрих-кода Министерства обороны" . 1989-08-10. Архивировано из оригинала на 2011-07-22 . Проверено 22 июля 2010 .
  5. ^ «Уведомление о принятии: Спецификация унифицированной символики AIM / BC1» . 1997-06-19. Архивировано из оригинала на 2011-09-27 . Проверено 6 апреля 2011 .
  6. ^ «Штрих-код GNU» . Проект GNU . 19 февраля 2020.