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?