# Slice 31 – Advanced Image Editor

**Version:** 1.23.0  
**Basis:** Vendoo 1.22.0 / Slice 30

## Ziel

Der bisherige einfache Fotoeditor wurde durch einen nicht destruktiven Editor für Produktbilder und FLUX-Ergebnisse ersetzt. Das Original bleibt dauerhaft erhalten; jede Speicherung erzeugt eine neue Datei und eine nachvollziehbare Version.

## Funktionen

### Nicht destruktive Bearbeitung

- Originaldatei wird nie überschrieben
- persistente Versionenkette in `image_edit_versions`
- ältere Versionen als neue Bearbeitungsbasis auswählbar
- Original direkt wiederherstellbar
- neue Versionen bleiben nach Vendoo-Neustart nachvollziehbar

### Arbeitsablauf

- Undo und Redo innerhalb der aktuellen Sitzung
- Bearbeitungshistorie mit vollständigen Parametersnapshots
- Vorher-/Nachher-Ansicht
- Anzeige von Quell- und Ausgabeabmessungen

### Geometrie

- freier Zuschnitt
- Seitenverhältnisse Original, 1:1, 4:5, 3:4 und 16:9
- 90-Grad-Drehung links/rechts
- horizontales und vertikales Spiegeln
- Begradigung von -15 bis +15 Grad

### Licht und Farbe

- Belichtung
- Helligkeit
- Kontrast
- Lichter
- Schatten
- Weißabgleich/Temperatur
- Sättigung
- Schärfe

### Export

- JPEG, WebP oder PNG
- Qualitätsstufe 40–100 für JPEG/WebP
- Originalgröße oder maximale Zielgröße 2048, 1600, 1200 Pixel
- benutzerdefinierte Breite und Höhe mit proportionalem `inside`-Fit
- kein Hochskalieren über die vorhandene Auflösung

## Technik

- Vorschau im Browser mit Vanilla JavaScript und Canvas
- produktives Rendering serverseitig mit dem bereits vorhandenen `sharp`
- normalisierte Zuschnittkoordinaten für auflösungsunabhängige Exporte
- additive SQLite-Migration ohne Änderung bestehender Listings oder Bilder
- Pfadvalidierung beschränkt Bearbeitungen strikt auf `uploads/`
- bei fehlgeschlagener Versionsprotokollierung wird die neu erzeugte Datei wieder entfernt

## Bewusste Abgrenzung

Nicht enthalten und nicht als Platzhalter dargestellt:

- Hintergrundentfernung
- Inpainting
- Outpainting
- Maskeneditor

Diese Funktionen bleiben einem späteren, technisch separat ausgewählten und abgenommenen Slice vorbehalten.
