Генератор штрих-кода Codabar

Codabar старше почти всего, что ещё в ежедневном ходу, — он появился в 1972 году, — и держится по одной причине: системам, которые его приняли, незачем было меняться. Службы крови, библиотеки и курьерские сети построили вокруг него свою нумерацию, а работающее оборудование не меняют ради изящества. Отличительная черта — пара букв по краям: символ начинается с A, B, C или D и заканчивается такой же буквой, и эти буквы часть данных. Какую пару ставить — не вопрос вкуса, а соглашение того, кто читает; ошибка здесь и есть самый частый способ получить отказ от системы, которая символ прекрасно прочитала.

Оформление
Размеры
Подпись
Положение подписи
Выключка подписи
Цвета
Ограничители Codabar

322 × 237 px в PNG

Единицы размера

Спецификация

Набор символов
буквы и цифры
Длина
от 3 до 60 символов
Контрольная цифра
в этой символике не используется

Где применяется

  • Маркировка в службе крови, где Codabar десятилетиями нёс номера донаций и остаётся в работе рядом с более новыми стандартами
  • Библиотечная выдача: читательские билеты и штрих-коды экземпляров в системах, чьи каталоги строились вокруг него
  • Курьерские и авианакладные, где номер числовой, длина плавает, а считыватели уже стоят
  • Конверты фотопечати и пакеты для плёнки — применение, пережившее большинство лабораторий, которые его начинали

Чем отличается

Codabar сегодня выбирают почти исключительно потому, что его уже кто-то ждёт. По сравнению с Code 39 у него уже алфавит — цифры и шесть знаков препинания, букв в полезных данных нет, — зато символ чуть плотнее, и, в отличие от Code 39, есть четыре различимые пары начала и конца, по которым система отличает вид этикетки, не разбирая номер. По сравнению с Code 128 он проигрывает по всем техническим статьям: тот плотнее, кодирует весь набор знаков и имеет обязательный контрольный знак. Честный итог такой: новой системе выбирать Codabar не стоит, а существующей не стоит от него легкомысленно отказываться — под него подобраны и этикеточные материалы, и считыватели, и правила нумерации.

Типичные ошибки

  • Отбросить стартовую и стоповую буквы. Это не ограничители, которые программа дорисовывает вокруг вашего номера, а закодированные знаки, и многие системы сверяют именно их. Служба крови, ожидающая A…B, отклонит символ, пришедший как A…A, даже если цифры между ними верны.
  • Считать пары взаимозаменяемыми. A, B, C и D существуют затем, чтобы разные виды этикеток различались считывателем сразу. Что означает каждая пара, решает система, а не символика, поэтому ответ на вопрос «какую ставить» всегда в требованиях принимающей стороны и никогда в общем справочнике.
  • Ждать контрольного разряда. У Codabar его нет по определению. Некоторые отрасли добавляют свой — чаще всего по модулю 16, — но это надстройка над символикой, а не её часть, и считыватель, не настроенный на неё, вернёт контрольный знак как данные. Есть ли он в вашем номере, решает принимающая система.
  • Ставить буквы внутрь номера. Четыре буквы живут только по краям. Сами данные — это цифры и шесть знаков: минус, доллар, двоеточие, косая черта, точка и плюс. Ничего больше. Попытка закодировать букву внутри номера — не задача на обходной приём: у символики просто нет для неё представления.
  • Повторять номер между видами этикеток. Кроме цифр Codabar не несёт никакой структуры, и ничто в символе не говорит, что именно он обозначает. Системы, использующие для этого пару начала и конца, зависят от неё целиком, и партия этикеток с неверной парой опознает правильный номер как запись не того рода.

Вопросы и ответы

Что означают буквы в начале и в конце?
Это стартовый и стоповый знаки, и они часть закодированных данных. Доступны четыре — A, B, C и D, — что позволяет системе различать виды этикеток, не читая номер. Что означает каждая пара, определяет тот, кто задал требования к вашим этикеткам; сама символика никакого смысла им не приписывает.
Есть ли у Codabar контрольный разряд?
В составе символики — нет. Несколько отраслей добавляют его по соглашению, чаще всего контрольный знак по модулю 16, но это договор между печатающим и читающим, а не встроенное свойство. Если требования его предусматривают, он должен войти в кодируемые данные, а считыватель — быть настроен на его отбрасывание.
Можно ли закодировать буквы или пробелы?
Нет. Полезные данные ограничены десятью цифрами и шестью знаками: минус, доллар, двоеточие, косая черта, точка и плюс. Буквы встречаются только как стартовый и стоповый знаки по краям. Если номер содержит что-то ещё, Codabar для него не подходит.
Стоит ли брать Codabar для новой системы?
Почти наверняка нет. Code 128 плотнее, несёт полный набор знаков и имеет обязательный контрольный знак, которого у Codabar нет. Codabar уместен там, где его требуют существующие считыватели, существующие этикетки или существующие требования, — а в службе крови и в библиотеках это как раз обычное положение дел.
Почему этикетки читаются, но система их не принимает?
Проверьте прежде всего пару начала и конца. Символ с верными цифрами и неверными буквами читается безупречно на уровне оборудования и отклоняется на уровне приложения, потому что многие системы решают по этим буквам, к какому роду записей относится номер. Это самая частая претензия к Codabar.