Инструменты
Руководства

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

QR

Создание одномерных штрихкодов (CODE128, EAN, UPC, CODE39 и др.) в PNG или SVG.

100 % на клиенте Без бэкенда
Предпросмотр
На этой странице

Что такое генератор штрихкодов?#

1D-штрихкод — это стопка вертикальных чёрных полос, которую вы всё ещё видите на каждой упаковке товара, транспортной этикетке и билете на событие. В отличие от QR-кода (2D и несущего сотни байт), 1D-штрихкод несёт короткий идентификатор — обычно от 4 до 14 символов, — который лазерный сканер или камера телефона читает за один горизонтальный проход. Эта страница отрисовывает одиннадцать самых распространённых символологий в вашем браузере и экспортирует результат как PNG или SVG.

Причина, по которой форматов так много, в том, что каждый разрабатывался под ограничения конкретной отрасли. EAN-13 и UPC — розничный стандарт: фиксированная длина, только цифры, с математически вычисленной контрольной цифрой, чтобы сканер отбраковывал ошибки. CODE128 несёт любой ASCII-текст и является рабочей лошадкой доставки (например, трекинг-номера). CODE39 — устаревший буквенно-цифровой формат, ещё встречающийся на пропусках и asset-метках. ITF-14 кодирует 14-значные коды транспортных контейнеров. Pharmacode упаковывает одно целое (от 3 до 131070) в крошечный символ для фармакологической упаковки. MSI, codabar, EAN-5 и EAN-2 покрывают нишевые случаи.

Эта страница оборачивает JsBarcode, который рисует на <canvas> для растрового вывода или на элемент <svg> для векторного. Перед передачей библиотеке она делает быструю локальную проверку, поэтому вы получаете дружелюбное сообщение («только цифры» или «неверная длина») вместо молчаливой неудачи.

Как пользоваться#

  1. Введите или вставьте значение в поле ввода. Плейсхолдер 123456789012 намекает на длину EAN-13.
  2. Выберите Формат. У каждой символологии свой набор символов и правила длины — в выпадающем списке все одиннадцать (CODE128, CODE39, EAN13, EAN8, UPC, ITF14, MSI, codabar, pharmacode, EAN5, EAN2).
  3. Настройте ширину полос (1–4 px на модуль) и высоту (60, 100, 150 или 200 px). Более узкие полосы дают плотнее и меньше код; более высокие полосы сканируются надёжнее под углом.
  4. Нажмите Пример, чтобы подставить корректное значение выбранного формата, или Очистить, чтобы начать заново. Предпросмотр обновляется справа.
  5. Скачайте как PNG (для изображений и PDF) или SVG (для печати, где код должен оставаться резким при любом размере).

Ключевые возможности#

  • Одиннадцать символологий в одном инструменте. Розница (EAN-13/UPC), логистика (CODE128/ITF-14), учёт (CODE39/MSI), фармакология (pharmacode) и дополнения (EAN-5/EAN-2) — без прыганья по сайтам.
  • Контрольная цифра за вас. Для EAN-13, EAN-8, UPC и ITF-14 дайте 12/7/11/13 цифр, и контрольная цифра вычисляется автоматически; дайте полную длину — и она валидируется.
  • Предрендерная валидация. Инструмент ловит пустой ввод, нецифровые символы в числовых форматах, неверные длины и недопустимые символы CODE39/codabar до вызова отрисовщика.
  • Векторный SVG-экспорт. Штрихкоды для печати никогда не следует растеризовать — SVG остаётся резким при любом размере этикетки.
  • Работает локально. JsBarcode встроен в страницу; бэкенда нет, ваше значение никогда не покидает браузер.

Разбор примера#

Допустим, у вас товар с 12-значной базой 590123412345 и нужен EAN-13. Выберите EAN13, вставьте 590123412345. Отрисовщик вычислит контрольную цифру (7) и нарисует полный 13-значный штрихкод. Человекочитаемая строка под полосами читается как 5901234123457.

Математика контрольной цифры (для проверки вручную): суммируйте цифры на нечётных позициях ×1 плюс чётных позиций ×3, затем возьмите (10 − total mod 10) mod 10. Для 590123412345 это (5+0+2+4+2+4)×1 + (9+1+3+1+3+5)×3 = 17 + 66 = 83, и 10 − 3 = 7.

Для транспортной этикетки переключитесь на CODE128 и вставьте произвольную трекинг-строку вроде 1Z999AA10123456784 — CODE128 принимает полный диапазон ASCII, поэтому буквы, цифры и дефисы кодируются напрямую.

FAQ#

EAN-13 постоянно отвергает мой 13-значный номер — почему?#

Если вы уже набрали контрольную цифру, перепроверьте её: перепишите только первые 12 цифр и позвольте инструменту добавить 13-ю. Одна переставленная цифра инвалидирует контрольную сумму, и отрисовщик отказывается рисовать код, который не отсканируется.

Мой штрихкод CODE39 не сканируется. Что не так?#

CODE39 поддерживает только заглавные буквы A–Z, цифры 0–9 и символы - . $ / + % (плюс пробел). Строчные буквы не входят в спецификацию — сначала переведите их в верхний регистр. Инструмент помечает недопустимые символы ошибкой «chars» перед отрисовкой.

Что такое pharmacode и почему такой странный диапазон?#

Pharmacode — основанная на двоичном коде символология, применяемая на фармакологической упаковке для кодирования одного целого, сопоставленного с внутренним ID продукта. Допустимый диапазон — от 3 до 131070; всё вне его не представимо в этом формате.

Что выбрать — PNG или SVG?#

SVG для всего, что идёт в печать (этикетки, упаковка, документы), — масштабируется без пикселизации. PNG годится для показа на экране, подписей в email и PDF, где ожидается растровое изображение.