So erstellen und bearbeiten Sie animierte GIFs über die Befehlszeile in Ubuntu
Animierte GIFs sind in den letzten Jahren sehr populär geworden und ihre Popularität nimmt mit jedem Tag zu. Stimme nicht zu? Denke darüber nach: Über 23 Millionen GIFs werden jeden Tag an Tumblr geschickt. Es gibt also eindeutig ein Publikum für dieses Bildformat.
Ist das verlockend, GIFs zu erstellen? Wenn ja, werden Sie froh sein, dass es verschiedene GUI-basierte GIF-Editoren gibt, die auf verschiedenen Betriebssystemplattformen arbeiten. Wenn Sie jedoch Linux verwenden und nach einem Befehlszeilentool für diesen Job suchen, suchen Sie nicht weiter, da wir Gifsicle - ein Tool, mit dem Sie einfach mit animierten GIFs spielen können - diskutieren.
Hinweis : Version 1.78 von Gifsicle wurde für alle in diesem Artikel erwähnten Beispiele verwendet.
Gifsicle
Gifsicle ist ein Befehlszeilenprogramm zum Erstellen, Bearbeiten und Abrufen von Informationen über GIF-Bilder und -Animationen. Laut der offiziellen Webseite des Tools bietet Gifsicle mehrere Funktionen, einschließlich Bildoptimierung sowie Kontrolle über Interlacing, Kommentare, Schleifen und Transparenz. Es " erstellt brave GIFs: entfernt überflüssige Farben, verwendet nur lokale Farbtabellen, wenn es unbedingt notwendig ist (lokale Farbtabellen verschwenden Platz und können Anzeigeartefakte verursachen) usw. "
Download und Installation
Auf Ubuntu (wie auch auf anderen Debian-basierten Systemen) können Sie das Gifsicle-Tool mit dem folgenden Befehl einfach herunterladen und installieren:
sudo apt-get installieren gifsicle
Alternativ können Sie es auch mit dem Quellcode von Grund auf neu erstellen oder eine vordefinierte Binärdatei verwenden - beide stehen auf der offiziellen Webseite des Tools zum Download bereit.
Erstellen Sie animierte GIF mit Gifsicle
Angenommen, Sie haben eine Reihe von JPG-Dateien und möchten daraus eine animierte gif-Datei erstellen. Hier ist, wie es geht:
Da der gifsicle
Befehl nur auf gif-Dateien funktioniert, müssen Sie zuerst alle .jpg-Dateien mit dem Befehl convert
in das .gif-Format convert
:
convert [Eingabedateiname] .jpg [Ausgabedateiname] .gif
Wenn die Anzahl der JPG-Dateien groß ist, können Sie den folgenden Befehl verwenden, um alle zu konvertieren:
convert '* .jpg [widht, für zB: 300x]' resized% 03d.gif
Sobald die Konvertierung von jpg in gif abgeschlossen ist, lautet der allgemeine Befehl, einzelne Gifs zu einem endgültigen animierten zu kombinieren:
gifsicle [Geschwindigkeit der Animation] [Anzahl der Schleifen] [Eingabe jpgs]> output.gif
In dem obigen Befehl kann die "Geschwindigkeit der Animation" mit dem Flag --delay
eingestellt werden, während die "Anzahl der Schleifen" mit dem Flag --loopcount
gesetzt werden --loopcount
.
Zum Beispiel hatte ich die folgende Gruppe von JPG-Bildern.
Der folgende Befehl wurde verwendet, um ein animiertes GIF aus den obigen Bildern zu erzeugen:
gifsicle --delay = 80 --loopcount = für immer * .gif> out.gif
Und hier ist das out.gif.
Bitte beachten Sie, dass der Wert von --delay
die Verzögerung zwischen Frames in Hundertstelsekunden darstellt. Außerdem habe ich "forever" als Wert für die Flag --loopcount
verwendet. Dies stellt sicher, dass die Animation nicht stoppt. Sie können einen beliebigen ganzzahligen Wert verwenden, wenn die Animation auf diese Anzahl beschränkt werden soll.
Extrahiere einzelne Frames
Gifsicle ermöglicht es Ihnen auch einfach einzelne Bilder aus einem animierten Gif zu extrahieren. Hier ist ein Beispiel, wie ich es gemacht habe:
gifsicle out.gif '# 0'> zuerst-frame.gif
Der obige Befehl extrahiert das erste Bild aus dem animierten out.gif. Ich änderte nur den ganzzahligen Wert nach "#" und dem Namen der Ausgabedatei und konnte alle Frames aus out.gif extrahieren.
Wenn die Anzahl der Frames im animierten GIF ziemlich hoch ist und Sie alle extrahieren möchten, ist es - verständlicherweise - nicht praktikabel, den obigen Befehl immer wieder manuell auszuführen. In diesem Fall können Sie den Befehl in einer Schleife von einem Shell-Skript ausführen.
Eine weitere Sache, die hier erwähnt werden sollte, ist, dass Sie auch negative Werte mit "#" verwenden können. Negative Werte beziehen sich auf Frames vom Ende. Mit "# -1" erhalten Sie beispielsweise den letzten Frame.
Bearbeiten Sie animiertes GIF
Mit Gifsicle können Sie auch animierte GIFs bearbeiten. Der folgende Befehl erstellt beispielsweise ein neues "out.gif", das nichts anderes als das alte "out.gif" ist, dessen erstes Bild durch die Zusammenführung von "a.gif" und "b.gif" ersetzt wurde:
gifsicle --delay = 80 --loopcount = für immer -b out.gif --replace '# 0' a.gif b.gif
In ähnlicher Weise können Sie mit dem Flag --delete
Frames löschen. Der folgende Befehl löscht beispielsweise das erste Bild von "out.gif", wobei das resultierende gif "out-new.gif" lautet:
gifsicle out.gif --delete '# 0'> out-new.gif
Sie können nicht nur löschen und ersetzen, sondern auch neue Bilder zu einem animierten GIF hinzufügen. Zum Beispiel können Sie mit dem --append
am Ende eines animierten --append
Bilder hinzufügen. Hier ist ein Beispiel:
gifsicle out-new.gif --anhang a.gif> out-new-anhang.gif
Der obige Befehl wird den "a.gif" -Rahmen an das animierte "out-new.gif" anhängen und das animierte "out-new-attended.gif" als Ausgabe erzeugen.
Sie können auch das --insert-before
verwenden, um einen Frame (oder mehrere Frames) an einer beliebigen Stelle in einem vorhandenen animierten --insert-before
hinzuzufügen.
Bildumwandlung
Gifsicle bietet auch einige Optionen zur Bildumwandlung. Mit dem Tool können Sie beispielsweise die Größe von Gif-Bildern ändern. Sie können das --resize [width]x[height]
verwenden, um das --resize [width]x[height]
Bild auf eine bestimmte Breite und Höhe zu ändern. Auf der Manpage des Befehls: " Entweder Breite oder Höhe kann ein Unterstrich" _ 'sein. Wenn das Argument widthx_ ist, wird die Ausgabe GIF auf Breite Pixel Breite ohne Änderung des Seitenverhältnisses skaliert. "
So habe ich eine Größenänderung an "out.gif" durchgeführt:
gifsicle.gif --grße 150x_> out-resize.gif
Der obige Befehl erzeugte eine Datei namens "out-resize.gif", die nichts anderes als eine Größe "out.gif" mit einer Breite von 150 px war.
Fazit
Gifsicle ist vielleicht kein sehr beliebtes Tool zum Erstellen und Bearbeiten von GIFs, aber es ist sicherlich sehr nützlich. Und lassen Sie mich klarstellen, dass das, was wir hier besprochen haben, nur eine Spitze des Eisbergs ist, da das Werkzeug eine Fülle von Funktionen / Optionen bietet. Ich denke, es lohnt sich, einen Versuch zu machen - erfahren Sie mehr darüber hier.