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.
2.3 KiB
2.3 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Obracaj obrazy o dowolny kąt i odbijaj je w poziomie lub pionie. | c4ed5f7e270b | human | 4e6c302679f5 |
Obróć i odbij obraz
Obracaj obrazy o dowolny kąt i/lub odbijaj je w poziomie lub pionie. Operacje obrotu i odbicia można łączyć w jednym żądaniu.
Punkt końcowy API
POST /api/v1/tools/image/rotate
Przyjmuje dane formularza multipart z plikiem obrazu i polem JSON settings.
Parametry
| Parametr | Typ | Wymagany | Domyślnie | Opis |
|---|---|---|---|---|
| angle | number | Nie | 0 |
Kąt obrotu w stopniach (zgodnie z ruchem wskazówek zegara). Przyjmuje dowolną wartość liczbową. |
| horizontal | boolean | Nie | false |
Odbij obraz w poziomie (lustrzane odbicie) |
| vertical | boolean | Nie | false |
Odbij obraz w pionie |
Przykładowe żądanie
Obrót o 90 stopni zgodnie z ruchem wskazówek zegara:
curl -X POST http://localhost:1349/api/v1/tools/image/rotate \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"angle": 90}'
Odbicie w poziomie:
curl -X POST http://localhost:1349/api/v1/tools/image/rotate \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"horizontal": true}'
Obrót i odbicie razem:
curl -X POST http://localhost:1349/api/v1/tools/image/rotate \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"angle": 45, "vertical": true}'
Przykładowa odpowiedź
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 2480000
}
Uwagi
- Najpierw stosowany jest obrót, potem operacje odbicia.
- Obroty inne niż o 90 stopni (np. 45 stopni) powiększą płótno, aby zmieścić obrócony obraz, z wypełnieniem przezroczystym lub czarnym zależnie od formatu wyjściowego.
- Typowe wartości: 90, 180, 270 dla obrotów o ćwierć obrotu.
- Orientacja EXIF jest automatycznie stosowana przed przetwarzaniem, więc obrót jest względny do orientacji wizualnej.