Und sie bewegen sich doch

Multigif-Bildgenerator

von Andreas Bohne


Seit die neuesten Webbrowser-Versionen Multigif-Bilder zur Wiedergabe von einfachen Bildsequenzen unterstützen, erlebt diese Form des Bildes einen wahren Boom. Mit Hilfe des simplen MultiGIF-Programms kann man auch unter Linux schnell solche bewegten Bilder erzeugen.

Wie erzeugt man denn eigentlich Multigif-Bilder? Unter Betriebssystemen wie Windows oder Mac gibt es etliche Multigif-Generatoren. Allen gemeinsam ist die graphische Oberfläche, welche die Benutzung recht einfach gestaltet. Was aber, wenn man gar keine Oberfläche benötigt, da man mittels eines Shell-Scripts die Multigif-Bilder erzeugen möchte? In diesem Fall kann man z.B. auf die Software von Andy Warley zurückgreifen, der ein Programmpaket entwickelt hat, um Multigif-Bilder aus einzelnen Gif-Bildern zusammenzusetzen. Das Programm MultiGIF kann im Internet von http://www.kfs.org/~abw/code/multigif.html heruntergeladen werden. Es handelt sich um ein Sharewareprodukt, das für den privaten, nicht kommerziellen Gebrauch frei ist. Die Installation gestaltet sich recht einfach: Ein simples make, und das Programm wird zusammengesetzt. Der Funktionsumfang deckt dabei alle Wünsche ab, die man an ein solches Programm stellt. Die wichtigsten Parameter sind in Tabelle 1 zu sehen:

Tabelle 1: Parameter von MultiGIF
-bIndex der Hintergrundfarbe (Voreinstellung 0)
-cFügt einen Kommentar in das Multigif-Bild ein (z.B. Copyright)
-gNimmt die globale Farbpalette von einem anderem Bild als vom ersten
-nAnzahl der Sequenz-Schleifen (0 ist unendlich)
-lDie Bilder benutzen ihre eigene statt der globalen Farbpalette
-vAusführliche Ausgabe
-oName der generierten Multigif-Datei

Ein gültiger Aufruf des Programms wäre zum Beispiel:

multigif -n 0 -l "1-3" -c "TestGIF" -o bild_multi.gif
bild_a.gif bild_b.gif bild_c.gif

Viele Leute empfinden eine WWW-Seite als sehr unruhig und unangenehm, wenn zu viele Multigif-Bilder auf einer Seite verwendet werden. Abhilfe kann da ein JavaScript schaffen, das ein Bild erst dann rotieren läßt, wenn man mit dem Cursor darüber fährt. Dazu implementieren wir in Listing 1 die Funktion switchto, die mit verschiedenen Parametern als onMouseOver- bzw. onMouseOut-Routine gesetzt wird. So einfach ist das. Natürlich gibt es noch viele andere Programme zur Generierung von Multigif-Bildern, doch wozu mit Kanonen auf Spatzen schießen? :-)

Listing 1: JavaScript-Programm für Multigifs

<html>
<head>
<title>Multigif-Demo</title>
</head>

<body bgcolor="#FFFFFF">

<script language="JavaScript">
<!--
if (parseInt(navigator.appVersion.substring(0,1))>=3)
 {
  m1on = new Image(135,100);
  m1on.src = "./cluster_8_m.gif";
  m1off = new Image(135,100);
  m1off.src = "./cluster_8_0.gif";
 }
  function switchto(name, on) {
  if (parseInt(navigator.appVersion.substring(0,1))>=3) {
    image = eval(name + (on == 1 ? "on.src" : "off.src"));
    if (image != "") {
        document[name].src = image;
    }
  }
}
// -->
</script>

<center>
<a href="./cluster_8_b.gif" onMouseOver="switchto('m1',1)" 
     onMouseOut="switchto('m1',0)">
<img width=135 height=100 src="./cluster_8_0.gif" 
     border=0 name="cluster">
</a>
</center>

</body>
</html>

Der Autor

Andreas Bohne ist Diplominformatiker und promoviert derzeit in Heidelberg am Deutschen Krebsforschungszentrum.

Copyright © 1998 Linux-Magazin Verlag