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

Зображення в Base64

Конвертуйте одне або кілька зображень у рядки, закодовані в base64, та data URI. Підтримує необовʼязкову конвертацію формату, контроль якості та зміну розміру. Корисно для вбудовування зображень напряму в HTML, CSS, JSON або шаблони листів.

API Endpoint

POST /api/v1/tools/image/image-to-base64

Приймає дані форми multipart з одним або кількома файлами зображень та необовʼязковим полем JSON settings.

Параметри

ПараметрТипОбовʼязковийЗа замовчуваннямОпис
outputFormatstringНі"original"Конвертувати перед кодуванням: original, jpeg, png, webp, avif, jxl
qualitynumberНі80Якість виводу для форматів із втратами (від 1 до 100)
maxWidthnumberНі0Максимальна ширина в пікселях (0 = без зміни розміру, не збільшуватиме)
maxHeightnumberНі0Максимальна висота в пікселях (0 = без зміни розміру, не збільшуватиме)

Приклад запиту

bash
curl -X POST http://localhost:1349/api/v1/tools/image/image-to-base64 \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"outputFormat": "webp", "quality": 80, "maxWidth": 200}'

Кілька файлів:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/image-to-base64 \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F "[email protected]" \
  -F 'settings={"outputFormat": "original"}'

Приклад відповіді

json
{
  "results": [
    {
      "filename": "icon.png",
      "mimeType": "image/webp",
      "width": 200,
      "height": 200,
      "originalSize": 45000,
      "encodedSize": 28800,
      "overheadPercent": -36.0,
      "base64": "UklGRlYAAABXRUJQ...",
      "dataUri": "data:image/webp;base64,UklGRlYAAABXRUJQ..."
    }
  ],
  "errors": []
}

Поля відповіді

ПолеТипОпис
resultsarrayУспішно конвертовані зображення
errorsarrayЗображення, які не вдалося обробити (з іменем файлу та повідомленням про помилку)

Обʼєкт result

ПолеТипОпис
filenamestringОригінальне імʼя файлу
mimeTypestringMIME-тип закодованого виводу
widthnumberКінцева ширина в пікселях (після будь-якої зміни розміру)
heightnumberКінцева висота в пікселях (після будь-якої зміни розміру)
originalSizenumberОригінальний розмір файлу в байтах
encodedSizenumberРозмір рядка base64 в байтах
overheadPercentnumberВідсоткова різниця в розмірі порівняно з оригіналом (додатне = більше, відʼємне = менше)
base64stringСирі дані зображення, закодовані в base64
dataUristringПовний data URI, готовий до використання в атрибутах src

Примітки

  • Кодування base64 зазвичай збільшує розмір приблизно на 33% порівняно з бінарним файлом. Поле overheadPercent показує фактичну різницю.
  • Коли outputFormat"original", файли HEIC/HEIF конвертуються в JPEG (оскільки браузери не можуть показувати HEIC у data URI).
  • Параметри maxWidth та maxHeight змінюють розмір за допомогою fit: inside з withoutEnlargement, тож зображення, менші за вказані розміри, не збільшуються.
  • В одному запиті можна обробити кілька файлів. Кожен файл обробляється незалежно, і збої не заважають успішній обробці інших файлів.
  • Файли SVG передаються як image/svg+xml без повторного кодування (якщо не запитано конвертацію формату).
  • Це кінцевий пункт лише для читання. Він не створює завантажуваного файлу чи jobId. Дані base64 повертаються напряму в тілі відповіді.