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

Генератор QR-кодов

Генерация изображений QR-кодов из текста или URL с настраиваемым размером, уровнем коррекции ошибок и пользовательскими цветами переднего плана/фона.

Эндпоинт API

POST /api/v1/tools/image/qr-generate

Принимает JSON-тело (не multipart). Загрузка файла не требуется.

Параметры

ПараметрТипОбязательныйПо умолчаниюОписание
textstringДа-Содержимое для кодирования в QR-код (от 1 до 2000 символов)
sizenumberНет400Ширина/высота выходного изображения в пикселях (от 100 до 10000)
errorCorrectionstringНет"M"Уровень коррекции ошибок: L (7%), M (15%), Q (25%), H (30%)
foregroundstringНет"#000000"Цвет переднего плана/модулей QR-кода в hex (#RRGGBB)
backgroundstringНет"#FFFFFF"Цвет фона QR-кода в hex (#RRGGBB)
logoDataUristringНет-Изображение логотипа как data URI (data:image/png;base64,... или data:image/jpeg;base64,..., максимум 700 КБ). Центрируется на QR-коде при 22% от размера QR. Принудительно устанавливает коррекцию ошибок в H

Уровни коррекции ошибок

УровеньВосстановлениеСценарий использования
L~7%Максимальная плотность данных
M~15%Сбалансированный (по умолчанию)
Q~25%Хорошо подходит для печатных кодов
H~30%Лучше всего для кодов с наложением логотипа

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

bash
curl -X POST http://localhost:1349/api/v1/tools/image/qr-generate \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"text": "https://snapotter.com", "size": 500, "errorCorrection": "H"}'

Брендированный QR-код с пользовательскими цветами:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/qr-generate \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"text": "Hello World", "size": 300, "foreground": "#1a365d", "background": "#f7fafc"}'

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

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/qrcode.png",
  "originalSize": 0,
  "processedSize": 4520
}

Примечания

  • Этот эндпоинт принимает JSON, а не multipart form data, поскольку загрузка изображения не нужна.
  • Вывод всегда представляет собой изображение PNG.
  • Имя выходного файла всегда qrcode.png.
  • originalSize всегда равен 0, поскольку этот инструмент генерирует изображения с нуля.
  • Вокруг QR-кода включается тихая зона (отступ) в 2 модуля.
  • Максимальная длина текста — 2000 символов. Фактическая ёмкость зависит от уровня коррекции ошибок и кодировки символов.
  • Более высокие уровни коррекции ошибок позволяют QR-коду оставаться считываемым, даже если он частично скрыт, но уменьшают ёмкость данных.
  • Когда указан logoDataUri, коррекция ошибок автоматически принудительно устанавливается в H (30%), чтобы QR-код оставался считываемым, несмотря на закрытие центра логотипом.