Knowledge Base » Bilder mit PHP erstellen
Achtung: Für dieses Tutorial wird die GD-Bibliothek verwendet. Sollte diese auf deinem Webspace nicht installiert sein, so bitte den Betreiber deines Webservers die Bibliothek zu installieren.Dies ist das komplette Skript, was wir erstellen wollen. Der Code wird danach erläutert:
Verwendete Funktionen:
Die ersten Zeilen Code dienen nur der Erkennung des Browsers und haben daher absolut nichts mit der Grafikerstellung zu tun. Deshalb wird der Code nicht näher erläutert.
- imagecreate(x, y);
Diese Funktion erstellt eine neue Grafik mit 305 Pixel Breite und 40 Pixel Höhe. Die Grafik wird dann der Variable $img zugewiesen.
- imagecolorallocate(resource, red, green, blue);
Hier wird aus den RGB-Werten eine Farbe generiert. Diese Funktion muss für jede Farbe aufgerufen werden, die innerhalb der Grafik verwendet werden soll. Bei den obigen Skript werden zwei Farben (Weiß und Schwarz) und der jeweiligen Variable gespeichert. Der erste Aufruf der Funktion erzeugt außerdem automatisch die Hintergrundfarbe.
- imagerectangle(resource, x1, y1, x2, y2, color);
Zeichnet in der mit ressource angegeben Grafik ein Rechteck, beginnend bei den Koordinaten x1 und y1 bis zu x2 und y2. Die Koordinaten geben an, von wo bis wo das Viereck zu zeichnen ist, angefangen bei der linken oberen Ecke des Bildes. Der letzte Parameter color gibt die Farbe an des Rechteckes an.
- imagestring(ressource, font, x, y, text, color);
Diese Funktion schreibt einen horizontalen String. Der Parameter font gibt die Schriftgröße an, in der der String geschrieben werden soll. Dannach wird mit den Koordinaten x und y angegeben, von wo aus der String geschrieben werden soll. Mit dem Parameter wird der Text angegeben und mit color die Schriftfarbe an.
- header('Content-type: image/gif');
Hiermit wir ein HTML-Header an den Browser gesendet. Der Content-Type teilt dem Browser mit, was für Daten der Webserver sendet. Der Browser kann dann den Inhalt demensprechend darstellen. Weitere Informationen zum HTTP-Header gibt es hier und zum Content-Type hier.
- Imagegif($img);
Das Resultat der bearbeiteten Grafik wird hiermit an den Browser ausgegeben. An stelle einer Grafik im GIF-Format kann auch eine Grafik im JPG- oder PNG-Format ausgewählt werden. Die Funktionen dafür lauten "imagejpg($img)" und "imagepng($img)". Wenn man eine anderes Grafikformat nimmt, so muss auch der zugehörigen Header angepasst werden, damit der Browser die Grafiken richtig darstellen kann. Für die zwei Beispiele wären hier "image/jpeg" und "imagepng" die richtigen Funktionen.
- Imagedestroy(ressource);
Gibt den benutzten Speicher wieder frei, in dem es das Bild löscht.
Nachdem man die Datei erstellt und auf den Webserver hochgeladen hat, kann man sie mit dem Browser aufrufen. Das Ergebnis sollte in etwa so aussehen:

Ich hoffe man hat einen kleinen Einblick bekommen wie man Grafiken mit der GD-Bibiothek erstellt. Natürlich kann man mit der Bibiothek noch einiges mehr machen, aber dies soll für den Anfang reichen. Viel Spaß!
