This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

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

Сканируйте загруженные изображения на наличие всех типов штрихкодов и QR-кодов. Возвращает декодированный текст, тип штрихкода и данные о положении для каждого обнаруженного кода. Также создаёт аннотированное изображение с цветными ограничивающими рамками вокруг обнаруженных кодов.

Конечная точка API

POST /api/v1/tools/image/barcode-read

Принимает multipart form data с файлом изображения и необязательным полем JSON settings.

Параметры

ПараметрТипОбязательныйПо умолчаниюОписание
tryHarderbooleanНетtrueВключить агрессивный режим сканирования для труднораспознаваемых штрихкодов (медленнее, но тщательнее)

Пример запроса

bash
curl -X POST http://localhost:1349/api/v1/tools/image/barcode-read \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"tryHarder": true}'

Пример ответа

json
{
  "filename": "receipt.jpg",
  "barcodes": [
    {
      "type": "QRCode",
      "text": "https://example.com/product/123",
      "position": {
        "topLeft": { "x": 100, "y": 50 },
        "topRight": { "x": 250, "y": 50 },
        "bottomLeft": { "x": 100, "y": 200 },
        "bottomRight": { "x": 250, "y": 200 }
      }
    },
    {
      "type": "EAN-13",
      "text": "5901234123457",
      "position": {
        "topLeft": { "x": 50, "y": 400 },
        "topRight": { "x": 300, "y": 400 },
        "bottomLeft": { "x": 50, "y": 450 },
        "bottomRight": { "x": 300, "y": 450 }
      }
    }
  ],
  "annotatedUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/annotated-receipt.png",
  "previewUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/annotated-receipt.png"
}

Поля ответа

ПолеТипОписание
filenamestringИсходное имя файла
barcodesarrayМассив объектов обнаруженных штрихкодов
annotatedUrlstring или nullURL для скачивания аннотированного изображения (null, если штрихкоды не найдены)
previewUrlstring или nullТо же, что и annotatedUrl (для совместимости с предпросмотром во фронтенде)

Объект штрихкода

ПолеТипОписание
typestringФормат штрихкода (QRCode, EAN-13, Code128, DataMatrix, PDF417 и т. д.)
textstringДекодированное содержимое штрихкода
positionobjectОграничивающая рамка с координатами topLeft, topRight, bottomLeft, bottomRight

Поддерживаемые типы штрихкодов

1D-штрихкоды: Code128, Code39, Code93, Codabar, EAN-8, EAN-13, ITF, UPC-A, UPC-E

2D-штрихкоды: QRCode, DataMatrix, PDF417, Aztec, MaxiCode

Примечания

  • Использует библиотеку zxing-wasm для обнаружения штрихкодов.
  • Аннотированное изображение накладывает цветные многоугольные ограничивающие рамки и нумерованные метки на каждый обнаруженный штрихкод.
  • В одном изображении может быть обнаружено до 255 штрихкодов.
  • Если штрихкоды не найдены, barcodes представляет собой пустой массив, а annotatedUrl равен null.
  • Режим tryHarder выполняет более тщательное сканирование за счёт времени обработки. Отключите его для более быстрой обработки чистых, хорошо выровненных штрихкодов.
  • Аннотированный вывод всегда в формате PNG.
  • Входные данные HEIC, RAW, PSD и SVG автоматически декодируются перед сканированием.
  • Ориентация EXIF применяется автоматически перед обработкой.