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.2 KiB
2.2 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Schneidet Bilder zu, indem ein Bereich über Position und Abmessungen angegeben wird. | 556f37893553 | human | 381bf2d3b47b |
Bild zuschneiden
Schneidet Bilder zu, indem ein rechteckiger Bereich über Position und Größe definiert wird. Unterstützt sowohl Pixel- als auch Prozenteinheiten.
API-Endpunkt
POST /api/v1/tools/image/crop
Akzeptiert Multipart-Formulardaten mit einer Bilddatei und einem JSON-Feld settings.
Parameter
| Parameter | Typ | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
| left | number | Ja | - | X-Versatz des Zuschneidebereichs (von der linken Kante) |
| top | number | Ja | - | Y-Versatz des Zuschneidebereichs (von der oberen Kante) |
| width | number | Ja | - | Breite des Zuschneidebereichs |
| height | number | Ja | - | Höhe des Zuschneidebereichs |
| unit | string | Nein | "px" |
Einheit für die Werte: px oder percent |
Beispielanfrage
curl -X POST http://localhost:1349/api/v1/tools/image/crop \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"left": 100, "top": 50, "width": 800, "height": 600}'
Mit Prozentwerten zuschneiden:
curl -X POST http://localhost:1349/api/v1/tools/image/crop \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"left": 10, "top": 10, "width": 80, "height": 80, "unit": "percent"}'
Beispielantwort
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 1200000
}
Hinweise
- Der Zuschneidebereich muss innerhalb der Bildgrenzen liegen. Ragt der Bereich über das Bild hinaus, schlägt die Anfrage fehl.
- Bei Verwendung der Einheit
percentstellen die Werte Prozentsätze der Bildabmessungen dar (z. B. bedeutetleft: 1010 % von der linken Kante). - Das Ausgabeformat entspricht dem Eingabeformat.
- Die EXIF-Ausrichtung wird vor dem Zuschneiden automatisch angewendet, sodass die Koordinaten der optisch korrekten Ausrichtung entsprechen.