Wolfgang Wiedl, Tuesday, 03-Oct-2006 00:31:35 DFT

Anmerkungen zu GD.pm

GD.pm ist ein Paket zur Generierung von Vektor-Graphiken in verschiedenen Bild-Formaten mittels Perl. Eine Beschreibung der vorhandenen Befehle findet man unter GD.pm. Ein Perl-Programm, das GD.pm zur Generierung einer Vektor-Graphik benutzt umfasst:
  1. eine Vereinbarung zur Nutzung des GD.pm-Paketes in Form von use GD;,
  2. die Generierung eines Bild-Objektes, etwa:
         $Bild = new GD::Image(600,80);
    dabei ist "$Bild" ein frei wählbarer Name, mit dem das Bild-Objekt im Programm bezeichnet wird, durch das erste Argument wird eine Bildbreite von 600 Bildpunkten und durch das zweite eine Bildhöhe von 300 Bildpunkten vorgegeben. Diese Bildpunkte werden von links nach rechts und von oben nach unten jeweils mit 0 beginnend indiziert.
  3. Angaben zu den benutzten Farben, etwa:
     
         $gelb = $Bild->colorAllocate(255,255,0);
    Der Name, hier "gelb" ist dabei frei wählbar. Die drei Argumente geben jeweils den rot-, grün- und blau-Anteil der ausgewählten Farbe an. Die Anteilswerte können jeweils von 0 bis 255 laufen. Je höher die Anteilswerte sind, desto heller ist die angegebene Farbe. (255,255,255) ist weiß, (0,0,0) ist schwarz oder jedenfalls die dunkelste Farbe, die auf dem Bildschirm möglich ist, (255,0,0) ist ein helles rot, (0,255,0) ein helles gün und (0,0,255) ein helles blau. Die erste der "allozierten" Farben gibt gleichzeitig die Hintergrundfarbe des Bildes an.
  4. die eigentlichen Zeichen-Befehle. Diese sind in GD.pm beschrieben, anzumerken ist aber, dass nicht alle dort beschriebenen Befehle in allen GD-Versionen auch wirklich zur Verfügung stehen. Insbesondere Befehle wie "filledRectangle" fehlen gelegentlich.
  5. Angaben zur Ausgabe des Bildes. In der Regel wird das Bild mit einer print-Anweisung ausgegeben, etwa:
         print $Bild->jpeg;
    Dabei wird auch das Datei-Format festgelegt, in diesem Falle also "jpeg". Es kommt auf die jeweilige GD-Version an, welche Formate verfügbar sind. "jpeg" dürfte selten fehlen, "gif" und "png" dagegen schon öfter.
Beispiele findet man z.B. in:

Installation auf webapp.rrz.uni-hamburg.de

Für die Installation auf "webapp.rrz.uni-hamburg.de" ist zu beachten:

png und jpeg-Format

Das nachfolgende png-Bild:

png-Bild

und das jpeg-Bild:

jpeg-Bild

wurden mit demselben Programm generiert. Das jpeg-Bild weist im Vergleich zum png-Bild deutlich mehr Farbstörungen auf, die insbesondere in den hellgrauen, aber auch in den grünen und roten Flächen erkennbar sind. Das jpeg-Bild belegt darüberhinaus auch fast neunmal soviel Speicherplatz wie das png-Bild.