18 Images
Bilder mit PHP zu verarbeiten bzw. zu generieren ist eine beliebte und wichtige Sache. Gerade im Zeitalter von Digitalkameras und einer immer engeren Vernetzung von verschiedenen Medien wird die Verarbeitung von Bildern immer wichtiger. Und nicht zuletzt leben auch Webseiten zu einem großen Teil von einer schönen grafischen Aufbereitung.
18.1 Image_Barcode 

Besprochene Version: 1.0.1 | Lizenz: PHP-Lizenz 2.02 |
Klassendatei(en): Image/Barcode.php |
Eine kleine, aber sehr hilfreiche Klasse ist Image_Barcode, die auf einfache Weise Barcodes für Sie erstellt. Um diese Klasse nutzen zu können, muss allerdings eine funktionstüchtige Version der GD-Bibliothek zur Verfügung stehen.
Die Klasse ist recht klein und überschaubar, da sie nur aus einer Methode besteht, die auch statisch aufgerufen werden kann. Die Methode draw() bekommt als ersten Parameter den Text übergeben, der als Barcode dargestellt werden soll. Der zweite, optionale Parameter definiert, welches Kodierungsverfahren genutzt werden soll. Standardmäßig wird das »2 of 5 Interleave«-Verfahren genutzt. Möchten Sie dieses Verfahren von Hand festlegen, geben Sie einfach den String int25 an. Des Weiteren unterstützt das Paket die Varianten EAN 13 und Code 39, die mit den Strings ean13 bzw. Code39 angesprochen werden können. Der letzte Parameter legt fest, welches Dateiformat für die Ausgabe genutzt werden soll. Hier handelt es sich standardmäßig um ein PNG. Welche Bildformate Sie hier nutzen können, hängt unter Umständen von der Version der GD-Library ab, die Sie nutzen. Die Methode akzeptiert die Strings png, gif und jpg, um die Codes in diesen Formaten auszugeben. Allerdings würde ich Ihnen empfehlen, das PNG-Format zu nutzen, da es von allen aktuellen Browsern unterstützt wird und eine gute Darstellungsqualität bietet.
Weitere Manipulationsmöglichkeiten sind leider nicht vorgesehen. Die Grafik kann weder in der Dateigröße beeinflusst werden, noch ist es möglich, sie direkt in einer Datei abzuspeichern. Sollte das für Sie interessant sein, können Sie diese Klasse aber immerhin als Grundlage für eine eigene Entwicklung nutzen.
Um einen Barcode zu generieren, reichen somit schon die folgenden Zeilen:
<?php require_once("Image/Barcode.php"); Image_Barcode::draw($_GET['NUM'], $_GET['TYP'], $_GET['IMG']); ?>
Listing 18.1 Ausgabe eines Barcodes
Um dieses Script einzubinden, nutzen Sie dann einfach das <img>-Tag aus HTML. Den PHP-Code sprechen Sie dann einfach über das src-Attribut an, dem Sie die notwendigen Werte als Query-String übergeben.
<html> <head><title></title></head> <body> <img src="barcode.php?NUM=9780131471498&TYP=ean13&IMG=png"/> <img src="barcode.php?NUM=9780131471498&TYP=int25&IMG=png"/> </body> </html>
Listing 18.2 Einbinden des Barcode-Scripts