27. September 2012
GIF-Animationen auf dem Schreibtisch
Den so genannten Scanimation-Effekt [1] habe ich bereits vor über vier Jahren in meine Links-Sammlung aufgenommen.[2] Außerdem existieren Kinderbücher, die sich dieses Effekts bedienen.[3] Der Effekt gefällt mir nicht nur deswegen heute noch so gut, weil er funktioniert, sondern vor allem, weil er dazu anregt, die dahintersteckende Idee selbst umzusetzen.
Es ist auch tatsächlich ziemlich einfach, etwa aus dem galoppierenden Pferd auf der rechten Seite eine druckbare Bilddatei zu erstellen, die man genauso zum Leben erwecken kann wie die gedruckten Vorlagen in den oben verlinkten Videos.
Man benötigt dafür zum einen natürlich eine transparente Folie, auf die ein geeignetes Streifenmuster aufgedruckt wurde. Ein solches Muster stellt Brusspup, der das erste der obigen Videos eingestellt hat, freundlicherweise als JPEG-Datei zur Verfügung.[4] Eine bedruckbare Folie findet man in jedem gut sortierten Schreib-/Druckwarengeschäft. Dabei muss man beachten, dass für Tintenstrahldrucker eine andere Folie benötigt wird als für Laserdrucker.
Für den Rest habe ich ein kleines Skript geschrieben, das aus GIF-Animationen geeignete Druckvorlagen erstellt: gif2stripes (TAR, gzip-komprimiert, 1,1 kB). Es handelt sich um ein Tool für die Kommandozeile und dürfte unter allen gängigen Linux-Distributionen (mit Python, PyCairo und ImageMagick) lauffähig sein.
Nach dem Herunterladen und Entpacken findet man die Dateien gif2stripes.sh
und striper.py
vor. Von diesen sollte erstere als ausführbar markiert werden:
$ tar xzf gif2stripes.tar.gz $ chmod a+x gif2stripes.sh
Anschließend kann man das Skript von der Kommandozeile wie folgt aufrufen.
$ ./gif2stripes.sh pferd.gif 0 2 4 6 8 9 pferd.gif consists of 10 frames. Resizing frame 0... Resizing frame 2... Resizing frame 4... Resizing frame 6... Resizing frame 8... Resizing frame 9... Extracting stripes from big___final-0.png... Extracting stripes from big___final-2.png... Extracting stripes from big___final-4.png... Extracting stripes from big___final-6.png... Extracting stripes from big___final-8.png... Extracting stripes from big___final-9.png...
Als Übergabewerte werden der Pfad zur GIF-Datei sowie eine Liste von Zahlen erwartet. Die Zahlen beziehen sich auf die aus der GIF-Animation zu extrahierenden Frames. Die Pferdeanimation besteht beispielsweise aus 10 Frames. Das kann man mit ./gif2stripes.sh pferd.gif
ermitteln. Für die Schablone von Brusspup sollte die Animation aber aus genau 6 Frames bestehen. Daher habe ich in dem Beispiel die Frames 1, 3, 5 und 7 ausgespart.
Das Skript hinterlässt anschließend im aktuellen Verzeichnis zwei neue Bilddateien: Hinter final_preview.gif
versteckt sich eine kleine GIF-Animation, die nur aus den ausgewählten Frames besteht. Und final_printable.png
ist schließlich die gewünschte Druckvorlage:
Es sollte ohne Einschränkungen möglich sein, die beschriebene Prozedur analog mit jeder beliebigen GIF-Animation, die man im Internet auftreibt, durchzuführen.
Beim Drucken ist zu beachten, dass Streifenfolie und Bildvorlage in der gleichen Größe - das heißt mit gleicher DPI-Zahl - gedruckt werden müssen, um ein optimales Ergebnis zu erhalten. Die Schwierigkeit dabei, den Effekt des obigen Videos zu rekonstruieren, besteht dann vor allem darin, die Folie mit gleichmäßiger Geschwindigkeit (insbesondere nicht zu schnell) über die Bildvorlage zu ziehen.
- youtube.com/watch?v=lvvcRdwNhGM
- Hier wird auch angesprochen, wie die verblüffende Illusion erzeugt wird.: brainblog.to/mediav...ew/870/Coole_Illusion
- Beispiel: Galopp! ISBN 3414822008. Boje/Bastei Lübbe, 2008.
- i.imgur.com/JUjKj.jpg