Files
SnapOtter/apps/docs/uk/tools/image/optimize-for-web.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

5.1 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Оптимізуйте зображення для веб-доставки з конвертацією формату, контролем якості, зміною розміру та видаленням метаданих. c327bbbce768 human 78358ca44146

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

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

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

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

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

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

Параметри

Параметр Тип Обов'язковий За замовчуванням Опис
format string Ні "webp" Вихідний формат: webp, jpeg, avif, png, jxl
quality number Ні 80 Вихідна якість (1-100)
maxWidth number Ні - Максимальна ширина в пікселях. Зображення зменшується, якщо ширше.
maxHeight number Ні - Максимальна висота в пікселях. Зображення зменшується, якщо вище.
progressive boolean Ні true Увімкнути прогресивне/черезрядкове кодування
stripMetadata boolean Ні true Видалити метадані EXIF, GPS, ICC та XMP

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

curl -X POST http://localhost:1349/api/v1/tools/image/optimize-for-web \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"format": "webp", "quality": 75, "maxWidth": 1920}'

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

curl -X POST http://localhost:1349/api/v1/tools/image/optimize-for-web \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"format": "avif", "quality": 50, "maxWidth": 1200, "maxHeight": 800}'

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

{
  "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, дозволяючи браузерам відображати попередній перегляд низької якості до повного завантаження зображення.
  • Кінцева точка попереднього перегляду легша (без створення робочої області/завдання) і призначена для інтерфейсу живого налаштування параметрів фронтенду.