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.
4.6 KiB
4.6 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Bearbeitet EXIF-, IPTC-, GPS- und XMP-Metadatenfelder in Bildern, ohne die Pixel neu zu kodieren. | 9271d3d8f278 | human | e0f8d58bc6c3 |
Bildmetadaten bearbeiten
Bearbeitet Bildmetadatenfelder einschließlich EXIF, IPTC, GPS-Koordinaten, Daten und Schlüsselwörter. Verwendet ExifTool im Hintergrund, sodass Metadaten direkt geschrieben werden, ohne die Pixel neu zu kodieren, wodurch die volle Bildqualität erhalten bleibt.
API-Endpunkte
Metadaten bearbeiten
POST /api/v1/tools/image/edit-metadata
Schreibt Metadatenfelder in das Bild und gibt die geänderte Datei zurück.
Metadaten prüfen
POST /api/v1/tools/image/edit-metadata/inspect
Gibt die vollständigen Metadaten des Bildes über ExifTool als JSON zurück. Verändert das Bild nicht.
Parameter (Bearbeiten)
| Parameter | Typ | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
| title | string | Nein | - | Bildtitel (XMP/EXIF) |
| author | string | Nein | - | Name des Autors |
| artist | string | Nein | - | Name des Künstlers (EXIF-Artist-Tag) |
| copyright | string | Nein | - | Urheberrechtshinweis |
| imageDescription | string | Nein | - | Bildbeschreibung (EXIF) |
| software | string | Nein | - | Software-Tag |
| dateTime | string | Nein | - | EXIF-DateTime-Wert |
| dateTimeOriginal | string | Nein | - | EXIF-DateTimeOriginal-Wert |
| setAllDates | string | Nein | - | Alle Datumsfelder auf einmal setzen |
| dateShift | string | Nein | - | Alle Daten um einen Versatz verschieben (Format: +HH:MM oder -HH:MM) |
| clearGps | boolean | Nein | false |
Alle GPS-Daten entfernen |
| gpsLatitude | number | Nein | - | GPS-Breitengrad setzen (-90 bis 90) |
| gpsLongitude | number | Nein | - | GPS-Längengrad setzen (-180 bis 180) |
| gpsAltitude | number | Nein | - | GPS-Höhe in Metern setzen |
| keywords | string[] | Nein | - | Hinzuzufügende oder zu setzende Schlüsselwörter/Tags |
| keywordsMode | string | Nein | "add" |
Umgang mit Schlüsselwörtern: add (anhängen) oder set (ersetzen) |
| fieldsToRemove | string[] | Nein | [] |
Liste bestimmter zu entfernender Metadatenfeldnamen |
| iptcTitle | string | Nein | - | IPTC Object Name |
| iptcHeadline | string | Nein | - | IPTC Headline |
| iptcCity | string | Nein | - | IPTC City |
| iptcState | string | Nein | - | IPTC Province/State |
| iptcCountry | string | Nein | - | IPTC Country |
Beispielanfrage
Autor und Urheberrecht setzen:
curl -X POST http://localhost:1349/api/v1/tools/image/edit-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"author": "Jane Smith", "copyright": "2024 Jane Smith"}'
GPS-Koordinaten setzen:
curl -X POST http://localhost:1349/api/v1/tools/image/edit-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"gpsLatitude": 48.8566, "gpsLongitude": 2.3522, "gpsAltitude": 35}'
GPS entfernen und Schlüsselwörter hinzufügen:
curl -X POST http://localhost:1349/api/v1/tools/image/edit-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"clearGps": true, "keywords": ["landscape", "sunset"], "keywordsMode": "add"}'
Metadaten prüfen:
curl -X POST http://localhost:1349/api/v1/tools/image/edit-metadata/inspect \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg"
Beispielantwort (Bearbeiten)
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 2452000
}
Hinweise
- Dieses Werkzeug erfordert, dass ExifTool auf dem Server installiert ist. Es ist im Docker-Image enthalten.
- Metadaten werden direkt geschrieben, sodass keine erneute Pixelkodierung erfolgt. Die Änderung der Dateigröße ist minimal (nur die Metadaten-Bytes).
- Der Parameter
dateShiftverschiebt alle Datumsfelder um den angegebenen Versatz, was zur Korrektur von Zeitzonenfehlern nützlich ist (z. B.+02:00oder-05:30). - Werden keine Änderungen angefordert (alle Parameter weggelassen oder leer), wird die Originaldatei unverändert zurückgegeben.
- Unterstützte Formate: JPEG, PNG, WebP, AVIF, TIFF, GIF, HEIC/HEIF.
- Für Formate, die nicht im Browser vorschaubar sind (HEIF, TIFF), enthält die Antwort ein Feld
previewUrlmit einer WebP-Vorschau.