mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
Renames 18 ambiguous or hard-to-search tool names so image tools self-qualify like the other modalities ("Compress" becomes "Compress Image"), and cleans up a few awkward names. Propagated across search (constants.ts), display (en.ts + 20 locales), the OpenAPI base spec + 20 locale specs, and the docs tool-page headings in 21 languages. Removes the duplicate "Normalize Audio" summary shared by the video and audio endpoints. Tool ids and routes are unchanged, so no API paths or bookmarks break.
3.1 KiB
3.1 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Зменшуйте розмір файлу зображення за рівнем якості або до цільового розміру файлу. | 342c5cf1f864 | human | 18cb8eab28be |
Стиснення зображення
Зменшуйте розмір файлу зображення, вказавши рівень якості або цільовий розмір файлу в кілобайтах. Інструмент використовує ітеративний двійковий пошук для точного досягнення цільового розміру.
API Endpoint
POST /api/v1/tools/image/compress
Приймає дані форми multipart із файлом зображення та полем JSON settings.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| mode | string | No | "quality" |
Режим стиснення: quality або targetSize |
| quality | number | No | 80 |
Рівень якості (1-100). Використовується, коли режим quality. |
| targetSizeKb | number | No | - | Цільовий розмір файлу в кілобайтах. Використовується, коли режим targetSize. |
Example Request
Стиснути до якості 60:
curl -X POST http://localhost:1349/api/v1/tools/image/compress \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"mode": "quality", "quality": 60}'
Стиснути до цільового розміру 200 KB:
curl -X POST http://localhost:1349/api/v1/tools/image/compress \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"mode": "targetSize", "targetSizeKb": 200}'
Example Response
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 204800
}
Notes
- У режимі
qualityнижчі значення дають менші файли з більшою кількістю артефактів стиснення. Значення 80 є хорошим за замовчуванням для веб-використання. - У режимі
targetSizeрушій виконує ітеративне стиснення, щоб максимально наблизитися до цільового розміру, не перевищуючи його. - Вихідний формат збігається з вхідним. Стиснення застосовується до власного кодування формату (напр. якість JPEG для файлів JPEG, якість WebP для файлів WebP).
- Якщо якість за замовчуванням (80) прийнятна, ви можете повністю опустити параметр
quality.