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.