Die Pixel hinter der Vorschau
GIF-Transparenz, Teilbilder und vollständige PNG-Frames
Ein GIF kann korrekt abspielen, obwohl seine internen Bilder unvollständig wirken. Transparenz, Teilbilder und Disposal-Anweisungen erklären diesen Unterschied. Prüfe den zusammengesetzten Leinwandzustand, bevor du einen PNG-Export als fehlerhaft einstufst.
1. Was GIF-Transparenz bedeutet
GIF kann einen Paletteneintrag für ein Bild transparent kennzeichnen. Anders als PNG bietet es dabei keine stufenlose Reihe von Alphawerten. Ein entsprechender Patch-Pixel fügt der Leinwand keine neue Farbe hinzu. Er kann einen transparenten Hintergrund freigeben oder einen älteren deckenden Pixel sichtbar lassen. Entscheidend ist der vorherige Leinwandzustand.
Das ist bei Logos und überlagerten Objekten wichtig. Als PNG gespeicherte GIF-Farben erhalten keine beim Erstellen verlorene Kantenglättung zurück. Der Export bewahrt das Dekodierergebnis und rekonstruiert keine reichhaltigere Quelle. Vergleiche Kanten auf ähnlichem Hintergrund mit dem Original, um vorhandene Farbsäume von einem Extraktionsfehler zu unterscheiden.
2. Warum optimierte GIFs Teilbilder speichern
Bei ruhendem Hintergrund und kleinem beweglichem Objekt würden vollständige Bilder viele Pixel wiederholen. GIF kann stattdessen ein kleineres Rechteck mit einer Position auf der logischen Leinwand speichern. Dieser Patch kann andere Maße haben als die gesamte Animation. Seine Abmessungen bestimmen nicht die Größe des korrekt zusammengesetzten PNGs.
Das Rechteck allein ist nicht immer das sichtbare Bild. Transparente Stellen können ältere Pixel zeigen, Bereiche außerhalb bleiben unverändert. Wer rohe Patches ohne Zusammensetzen exportiert, verliert möglicherweise Hintergrund oder Position und erhält zu kleine Bilder. Vollständige Frames stellen erst den sichtbaren Leinwandzustand her und werden dann als PNG gespeichert.
3. Die logische Leinwand lesen
Stelle dir die logische Leinwand als Blatt für alle Patches vor. Das GIF liefert Breite, Höhe, Positionen und relevante Hintergrundinformationen. Der Extraktor erstellt diese Leinwand und verarbeitet Bilder der Reihe nach. Jedes Ausgabe-PNG nutzt die vollständigen Abmessungen, auch wenn das sichtbare Objekt nur einen kleinen Teil davon belegt.
Das öffentliche Beispiel hat 24 Frames und 480 × 300 Pixel; seine PNGs sollten ebenfalls 480 × 300 groß sein. Es zeigt den Unterschied zwischen verkleinerter Vorschau und Ausgabe, beweist aber nicht jeden Transparenzfall. Dafür eignen sich kontrollierte Disposal-Dateien. Aus komprimierter Größe allein folgen weder Patchgröße noch Transparenz oder Disposal-Methode.
4. Disposal 2 löscht einen Bereich
Disposal beschreibt den Leinwandzustand nach der Anzeige eines Frames und vor dem nächsten. Methode 2 entfernt das vorherige Frame-Rechteck und stellt dort die passende Hintergrundbehandlung wieder her. Sie löscht nicht zwangsläufig die gesamte Leinwand. Andere Pixel können bestehen bleiben und zum nächsten vollständigen Bild gehören.
In einem kontrollierten Beispiel verschwindet ein rotes Objekt auf Transparenz nach Methode 2, bevor an anderer Stelle Blau gezeichnet wird; unbetroffene Pixel bleiben erhalten. Bei einem deckenden GIF mit logischer Hintergrundfarbe kann diese Farbe zurückkehren. Vergleiche mit dem vorgesehenen Ergebnis, statt bei jeder Anwendung von Methode 2 vollständig transparente Ausgabe zu erwarten.
5. Disposal 3 stellt den früheren Zustand her
Methode 3 stellt den Bereich wieder her, wie er vor dem vorübergehenden Frame aussah. Das ist etwas anderes als Löschen. Verdeckt eine kurzzeitige Überlagerung ein vorhandenes Bild, werden dessen frühere Pixel anschließend wieder sichtbar. Der Dekodierer muss diesen Zustand vor dem Zeichnen der Überlagerung aufbewahren.
Eine kontrollierte Folge enthält Grundform, farbige Überlagerung und nächsten Patch. Nach dem Entfernen der Überlagerung sollte die Grundform wieder erscheinen. Ein leeres Loch oder eine verbleibende Überlagerung unterscheidet sich vom erwarteten Ergebnis. Dieses Beispiel erläutert die Mechanik, misst keine Geschwindigkeit und verspricht keine fehlerfreie Verarbeitung beschädigter GIFs.
6. Teilbilder mit vollständigen Frames vergleichen
Vergleiche die fertige Bildfolge, nicht jedes PNG mit einem isolierten Patch. Berücksichtige Position, vorhandene Pixel und Disposal des vorherigen Frames. Der vollständige Frame wird nach dem Zeichnen des aktuellen Patches, aber vor dessen Disposal gespeichert. Eine veränderte Reihenfolge kann ein plausibles und trotzdem falsches Ergebnis erzeugen.
Der Extraktor behandelt transparente Patches sowie Löschen und Wiederherstellen bei Methoden 2 und 3, ohne dekorativen Hintergrund einzufügen. Nutze nachvollziehbare geometrische Dateien mit bekannten Rechtecken und Farben. Kontrolliere Pixel im Objekt, an seiner alten Position und außerhalb des Patches. Das ist aussagekräftiger als die Betrachtung eines kleinen Vorschaubilds.
7. Transparente PNGs auf mehreren Hintergründen prüfen
Das Schachbrett zeigt transparente Bereiche, gehört aber zur Oberfläche. Lade einen Frame herunter und öffne ihn in einem Editor mit Transparenzanzeige. Lege ihn auf weißen und dunklen Hintergrund. Bleibt ein Schachbrett fest im Bild, prüfe die Quelle: Das Muster könnte bereits im GIF enthalten sein.
Manche Betrachter zeigen Transparenz auf Weiß oder Schwarz, ohne sie zu kennzeichnen. Ein weißes Rechteck beweist daher keine deckende Ausgabe. Umgekehrt entfernt die PNG-Konvertierung keinen weißen Hintergrund, der im GIF enthalten ist. Hintergrundentfernung ist eine eigene Bearbeitung. Bei Zweifeln prüfe den Alphakanal oder einen konkreten Pixel im Editor.
8. Die passende Lösung wählen
Bei fehlenden Fragmenten oder Spuren prüfe Nachbarframes und eine bekannte Beispieldatei. Bei Farbsäumen in der Quelle hilft ein besseres Original oder bewusste Kantenbearbeitung. Eingebrannte Hintergründe benötigen Hintergrundentfernung, beschädigte Daten eine neue Kopie. Diese Lösungen behandeln unterschiedliche Ursachen. Ein erneuter Download derselben Ausgabe verändert die Quellpixel nicht.
Ein vollständiges PNG bewahrt aktuelle Pixel, keine Patch-Anweisungen oder zukünftige Animation. Behalte beim Import einer Bildfolge Reihenfolge und separat dokumentierte Zeiten. Melde vermutete Kompositionsfehler mit Framenummer, erwartetem Ergebnis und Browser, möglichst anhand nicht vertraulichen Materials. Veröffentliche fremde Quellen oder extrahierte Grafiken nur mit ausreichender Erlaubnis.
Das GIF vor dem Export verstehen
Praktische Anleitungen erklären Transparenz, Framezeiten und Grenzen beim PNG- und ZIP-Download.
- Ein GIF in einzelne Frames aufteilen
So speicherst du ein Standbild aus einem GIF oder alle Frames als nummerierte PNGs im ZIP. Mit Hinweisen zu Transparenz, Anzeigedauer und großen Dateien.
- GIF-Framezeiten: Originalwerte und Vorschau
Erfahre, wie GIF-Verzögerungen funktionieren, warum die Vorschau abweicht und was PNGs speichern. Beispiel mit 0, 10, 20 und 80 ms.
- Große GIFs, Speichergrenzen und ZIP-Probleme lösen
Prüfe ungültige GIFs, Speicher- und Pixelgrenzen, lange Animationen und ZIP-Probleme. Konkrete Schritte für die lokale Frame-Extraktion.