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

Оптимізація для вебу

Оптимізуйте зображення для веб-доставки в один крок. Поєднує конвертацію формату, налаштування якості, опціональну зміну розміру, прогресивне кодування та видалення метаданих.

Кінцева точка API

POST /api/v1/tools/image/optimize-for-web

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

Також доступна кінцева точка живого попереднього перегляду на POST /api/v1/tools/image/optimize-for-web/preview, яка повертає оброблене зображення безпосередньо у двійковому вигляді (без створення робочої області) для налаштування параметрів у реальному часі.

Параметри

ПараметрТипОбов'язковийЗа замовчуваннямОпис
formatstringНі"webp"Вихідний формат: webp, jpeg, avif, png, jxl
qualitynumberНі80Вихідна якість (1-100)
maxWidthnumberНі-Максимальна ширина в пікселях. Зображення зменшується, якщо ширше.
maxHeightnumberНі-Максимальна висота в пікселях. Зображення зменшується, якщо вище.
progressivebooleanНіtrueУвімкнути прогресивне/черезрядкове кодування
stripMetadatabooleanНіtrueВидалити метадані EXIF, GPS, ICC та XMP

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

bash
curl -X POST http://localhost:1349/api/v1/tools/image/optimize-for-web \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"format": "webp", "quality": 75, "maxWidth": 1920}'

Оптимізація для AVIF з агресивним стисненням:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/optimize-for-web \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"format": "avif", "quality": 50, "maxWidth": 1200, "maxHeight": 800}'

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

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.webp",
  "originalSize": 4500000,
  "processedSize": 320000
}

Відповідь кінцевої точки попереднього перегляду

Кінцева точка попереднього перегляду (/api/v1/tools/image/optimize-for-web/preview) повертає двійкове зображення безпосередньо з інформаційними заголовками:

  • X-Original-Size - Оригінальний розмір файлу в байтах
  • X-Processed-Size - Оброблений розмір файлу в байтах
  • X-Output-Filename - Ім'я вихідного файлу з кодуванням URL

Примітки

  • Цей інструмент розроблено як єдиний конвеєр оптимізації для веб-ресурсів. Він обробляє конвертацію формату, налаштування якості, обмеження максимальних розмірів і видалення метаданих за один прохід.
  • Розширення імені вихідного файлу оновлюється відповідно до обраного формату.
  • Кодування JXL (JPEG XL) використовує спеціалізований кодувальник CLI. Зображення спочатку обробляється як PNG, а потім кодується в JXL.
  • Прогресивне кодування покращує сприйняту швидкість завантаження для JPEG і PNG, дозволяючи браузерам відображати попередній перегляд низької якості до повного завантаження зображення.
  • Кінцева точка попереднього перегляду легша (без створення робочої області/завдання) і призначена для інтерфейсу живого налаштування параметрів фронтенду.