WB-04 – GIF-Exportoptionen Farbe, Dither, Interlace, Lossy, Transparenz und WebSnap¶
Was macht die Funktion?¶
GIF verwendet eine begrenzte Farbpalette. Palettenwahl und Dither bestimmen, wie Farben und Verläufe angenähert werden. Die Optionen gelten kundenglobal für GIF-Webexporte, nicht getrennt je GIF-Ausgang.
Wo wird sie konfiguriert?¶
Kunden-JSON: webOptions.gifOptions. Der Ausgang selbst erhält mainFolder.web.subFolder[].format: "gif".
| Feld | Typ / dokumentierte Werte | Wirkung |
|---|---|---|
colorReduction |
Integer: 0 Perzeptiv, 1 Selektiv, 2 Adaptiv, 3 Restriktiv, 4 Benutzerdefiniert, 5 Schwarzweiß, 6 Graustufen, 7 Mac OS, 8 Windows | Palettenverfahren |
colors |
Integer: 2, 4, 8, 16, 32, 64, 128, 256 | Anzahl Palettenfarben |
dither |
Integer; Tabelle 4: 1 kein, 2 Diffusion, 3 Muster, 4 Rauschen | Farbdithering; Quellenkonflikt unten beachten |
ditherAmount |
Integer, 0–100 % | Ditherstärke |
interlaced |
Boolean | Zeilenweise Vorschau beim Laden |
lossy |
Integer, 0–100 % | Verlustbehaftete GIF-Optimierung |
transparency |
Boolean | Transparenz im Export zulassen |
transparencyDither |
Integer, Tabelle 4 wie dither |
Verfahren für Transparenzkanten |
transparencyAmount |
Integer, 0–100 % | Stärke des Transparenzdithers |
webSnap |
Integer, 0–100 % | Annäherung an Webfarben |
Die Werte stammen aus den Herstellertabellen, nicht aus einem vollständigen Laufnachweis. Keine dieser Beispielangaben ist hier als Default erklärt. colorReduction: 4 ist ein Spezialzweig; ohne geklärten Palettenvertrag keine benutzerdefinierte Palette versprechen. Die normalen Palettenverfahren benötigen deswegen nicht pauschal eine zusätzlich zu beschaffende Palette.
Konfigurieren und Beispiel¶
- Wähle am gewünschten Ausgang
format: "gif". - Stelle die kundenglobalen GIF-Optionen ein. Prüfe vorher, welche weiteren GIF-Ziele dieselben Optionen verwenden.
- Kontrolliere am Ergebnis Farbübergänge, Motivkanten und transparente Flächen. Bei Animation zusätzlich Framefolge, Zeitdaten und Schleife kontrollieren; ein Vorschaubild reicht nicht.
Fragment der Kunden-JSON für eine selektive 256-Farben-Palette ohne Dither nach Tabelle 4:
{
"webOptions": {
"gifOptions": {
"colorReduction": 1,
"colors": 256,
"dither": 1,
"ditherAmount": 100,
"interlaced": true,
"lossy": 0,
"transparency": true,
"transparencyDither": 1,
"transparencyAmount": 0,
"webSnap": 0
}
}
}
Die Stärke 100 aktiviert bei dither: 1 nach dieser Tabelle nicht selbst Diffusionsdither. Für Diffusion wäre der Tabellenwert 2 vorgesehen.
Grenzen und kuratierte Einschränkungen¶
Die Kommentare des aktuellen Handbuchbeispiels nennen Dither 0–3, seine Tabelle 4 dagegen 1–4. Der Source castet den eingelesenen Integer direkt zu PsDitherType, ohne Offset. Die Tabelle und der enge Quellenabgleich vom 21.10.2026 stützen 1 = kein und 2 = Diffusion; die installierte Interop und sämtliche Enumwirkungen sind damit nicht laufgeprüft. Die beiden Zahlenreihen nicht vermischen.
Zusätzlich setzt der gelesene Source exportTogif.Quality = exportTogif.Lossy. Das ist ein Implementierungsverdacht, keine zusätzliche Benutzeroption oder Zusage zur Wirkung von lossy.
Animation und statische Projektion (Sollentscheidung 14.10.2026)¶
Für animierte GIF-Quellen ist Animationserhalt bei GIF-Ausgabe die bestätigte Projektanforderung; statische Ausgaben sollen den ersten vollständig komponierten Frame verwenden. Das ist eine datierte Anforderung, kein pauschaler GIF-PASS. Der gelesene Mergezweig nimmt sogar alle .gif-Quellen aus, nicht nur nachgewiesen animierte: WB-10.
Quellen und Einordnung¶
ImageConvert-4.pdf, 09.10.2026, PDF-S. 15, 38–39 (gedruckt 11, 34–35). IC/Form1.cs 933–952, 2817–2829, 7748–7762; Quellstand. Ergänzend: Quellenbindung docs/kompletttest/representative-20261021/bindings-web-base-options/REPORT.md; datierte Sollklärung docs/kompletttest/jonko-klarstellungen-20261014.md, Abschnitt 3. Keine neue Ausführung.
Feldanker: colorReduction · colors · dither · ditherAmount · interlaced · lossy · transparency · transparencyAmount · transparencyDither · webSnap.
Weiter: PNG-Paletten · Transparenz und Canvas · Web.