GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Wie konvertiert man einen Png-Streifen in ein GIF?

Also habe ich diese Animation in einem Programm erstellt, aber es scheint den Export als PNG-Sequenz nicht zu unterstützen, sodass ich sie in ein GIF konvertieren könnte. Die Animation umfasst über 100 Frames, sodass das Speichern jedes Bildes einzeln eine Ewigkeit dauern wird. Es unterstützt jedoch den Export als „Streifen“, der wie ein Kinofilm ist. Jedes Bild in der Animation hat die gleichen Abmessungen. So funktioniert die „Strip“-Funktion des Programms.

Die Bilder in der Animation sind horizontal gestapelt, wobei das erste Bild ganz links und das letzte Bild ganz rechts ist. Es gibt keine Lücken zwischen den Frames und der Dateiname ist normalerweise „name_stripX.png“, wenn die Animation X Frames hat. Wenn jeder Frame 32 x 32 groß wäre und die Animation 8 Frames hätte, hätte diese Datei eine Breite von 256 und eine Höhe von 32.

Hier ist eine Beispielausgabe, jede Farbe füllt einen Frame aus:

Außerdem, nur um die Dinge ein wenig klarer zu machen, das Programm heißt „Game Maker 8.0.“

Akzeptierte Antwort:

Sie können ImageMagick verwenden, um Bilder auf unterschiedliche Weise zu konvertieren, und das sollte ganz einfach möglich sein. Zuerst können Sie in zwei Teile aufteilen (original.png das Quellbild ist und in diesem Fall 32 x 32 Pixel groß ist):

convert original.png -crop 32x32 parts-%02d.png

Sie können es dann in eine Animation umwandeln (verwenden Sie -loop 1 wenn Sie nicht möchten, dass es sich wiederholt):

convert -loop 0 -page +0+0 ./parts*.png output.gif

Ergebnis:

Die Ausgabe-PNGs des ersten Befehls enthalten einen Offset, also ohne die -page +0+0 Option endet die Animation wie folgt:

Es gibt verschiedene andere Optionen, die Sie einfügen können (hauptsächlich im zweiten Befehl), wie z. B. -delay etc – Sie können die Animation auch so optimieren, dass sie kleiner ist (und schneller zu laden/zu rendern) – z. ausgeliehen von hier:

convert output.gif -fuzz 10% -layers Optimize optimised.gif

oder gifsicle verwenden

gifsicle -O output.gif -o optimised.gif

BEARBEITEN: Wenn die Rahmen transparent sind, können Sie die zu ersetzenden Rahmen festlegen, indem Sie den
-dispose Background hinzufügen Option, also wenn ein Rahmen verworfen wird, wenn der nächste geladen wird:


Das Problem dabei ist, dass Sie das resultierende Bild dann wahrscheinlich nicht sehr optimieren können – eine andere Möglichkeit besteht darin, die Frames undurchsichtig zu machen, sodass das nächste Frame das vorherige verdeckt.

Verwandte:Elektrik – Konvertieren Sie geschaltetes Nachtlicht + Steckdose in eine nicht geschaltete Steckdose?
Ubuntu
  1. So konvertieren Sie CentOS 8 in CentOS Stream

  2. Wie kann ich CentOS in CloudLinux OS konvertieren?

  3. Konvertieren Sie TrueType-Glyphen in ein PNG-Bild?

  4. Wie füge ich Bilder in der Befehlszeile zusammen?

  5. Wie konvertiere ich tar.bz2 in tar.gz?

So konvertieren Sie PNG-Bilder im Stapelbetrieb in das JPG-Format unter Linux

So konvertieren Sie eine Windows-Datei in eine UNIX-Datei

So konvertieren Sie Videos in GIF unter Linux [Terminal- und GUI-Methoden]

So konvertieren Sie eine Webseite unter Linux in PDF

So konvertieren Sie PDF in PNG-Bilder und zurück unter Linux

So konvertieren Sie PDF in ein Bild mit Gimp