Mit PHP können Sie nicht nur HTML ausgeben, sondern auch Grafiken in
vielen Formaten - wie gif, png, jpg, wbmp, und xpm - erzeugen und/oder
manipulieren. Noch besser, Sie können Grafiken mit PHP direkt als
Datenstrom ausgeben. Damit das funktioniert, müssen Sie
PHP mit der GD-Bibliothek zur Grafikbearbeitung kompilieren. GD und PHP
benötigen, je nachdem mit welchen Grafikformaten Sie arbeiten wollen,
zusätzliche Bibliotheken.
Sie können die Grafikfunktionen in PHP auch verwenden, um die Größe von
JPEG, GIF,
PNG, SWF,
TIFF und JPEG2000 Grafiken zu
bestimmen.
Mittels der exif-Erweiterung können sie die
in den Headern von JPEG- und TIFF-Grafiken
enthaltenen Informationen verarbeiten. Auf diese Weise können von Digitalkameras
erstellte Metadaten verarbeitet werden. Die Exif-Funktionen benötigen
nicht die GD-Bibliothek.
Hinweis:
Im Abschnitt über die Anforderungen können Sie nachlesen, wie Sie die
Möglichkeiten zur Grafikbearbeitung erweitern können: lesen, schreiben
und manipulieren von Grafiken, und auslesen von Metadaten, bei Bildern
die mit einer Digitalkamera aufgenommen wurden.
Anforderungen
Mit der GD Bibliothek (verfügbar unter » http://www.libgd.org/) können Sie auch Grafiken erzeugen und
manipulieren.
Die mittels dieser Funktionen veränderbaren Grafik-Formate hängen davon
ab, welche Version von GD Sie installieren und welche
zusätzlich Biblioitheken GD benötigt um mit diesen
Formaten umgehen zu können. GD-Versionen älter als
gd-1.6 unterstützen GIF aber kein PNG. Neuere Versionen als gd-1.6 und
ältere als gd-2.0.28 unterstützen PNG, aber kein GIF. In gd-2.0.28 gibt
es erstmals wieder Unterstützung für GIF.
Hinweis:
Seit PHP 4.3 ist eine Version der GD-Bibliothek in PHP enthalten.
Diese gebündelte Version bietet zusätzliche Möglichkeiten, wie z.B.
alpha blending und sollte der externen Version immer vorgezogen werden
(der Code wird besser betreut und ist stabiler).
Hinweis:
Mit PHP 6.0.0 wurde die Unterstützung von GD 1.x eingestellt; es wird
eine Bibliothek ab Version 2.0.33 benötigt.
Sie können GD erweitern, um mehr Grafikformate zu verwenden.
Unterstützte Grafikformate
Grafikformat
Download der benötigten Bibliothek
Anmerkungen
gif
Wird nur von GD-Versionen älter als gd-1.6 und neuer als gd-2.0.28
unterstützt. Nur-lesende Unterstützung von GIF
gibt es ab PHP 4.3.0 und der gebündelten GD-Version.
Schreibende Unterstützung steht ab den
Versionen PHP 4.3.9 und PHP 5.0.1 zur Verfügung.
To enable GD-support configure PHP
--with-gd[=DIR], where DIR is the GD base
install directory. To use the recommended bundled version of the GD library
(which was first bundled in PHP 4.3.0), use the configure option
--with-gd.
GD library requires libpng and
libjpeg to compile.
In Windows, you'll include the GD2 DLL php_gd2.dll as
an extension in php.ini. The GD1 DLL php_gd.dll was
removed in PHP 4.3.2. Also note that the preferred truecolor image
functions, such as imagecreatetruecolor(), require GD2.
To disable GD support in PHP 3 add
--without-gd to your configure line.
Enhance the capabilities of GD to handle more image formats by specifying
the --with-XXXX configure switch to your PHP configure
line.
Supported image formats
Image Format
Configure Switch
jpeg-6b
To enable support for jpeg-6b add
--with-jpeg-dir=DIR.
png
To enable support for png add
--with-png-dir=DIR. Note, libpng
requires the zlib library,
therefore add --with-zlib-dir[=DIR]
to your configure line.
xpm
To enable support for xpm add
--with-xpm-dir=DIR. If configure
is not able to find the required libraries, you may add the path to
your X11 libraries.
Hinweis:
When compiling PHP with libpng, you must use the same version that was
linked with the GD library.
Enhance the capabilities of GD to deal with different fonts by specifying
the --with-XXXX configure switch to your PHP configure
line.
Supported font libraries
Font library
Configure Switch
FreeType 1.x
To enable support for FreeType 1.x add
--with-ttf[=DIR].
FreeType 2
To enable support for FreeType 2 add
--with-freetype-dir=DIR.
T1lib
To enable support for T1lib (Postscript Type 1 fonts) add
--with-t1lib[=DIR].
Native TrueType string function
To enable support for native TrueType string function add
--enable-gd-native-ttf.
Laufzeit Konfiguration
Das Verhalten dieser Funktionen wird
durch Einstellungen in der php.ini beeinflusst.
Image Konfigurationsoptionen
Name
Standard
Veränderbar
Changelog
gd.jpeg_ignore_warning
"0"
PHP_INI_ALL
Available since PHP 5.1.3.
Weitere Details und die Definitionen der
PHP_INI_*-Konstanten finden Sie im php.ini Einstellungen.
Hier eine kurze Erklärung der
Konfigurationsoptionen:
Image functions are very memory intensive. Be sure to set memory_limit high enough.
Resource Typen
Diese Erweiterung definiert keine Resource-Typen.
Vordefinierte Konstanten
Folgende Konstanten werden von dieser
Erweiterung definiert und stehen nur zur Verfügung, wenn die Erweiterung entweder
statisch in PHP kompiliert oder dynamisch zur Laufzeit geladen wurde.
Dieses Beispiel würde von einer Seite über einen Link wie
<img src="button.php?text=text"> aufgerufen.
Das oben aufgezeigte Beispielskript button.php nimmt den Text "text"
entgegen und legt diesen über ein vorhandenes Bild, in diesem Fall
"images/button1.png" und gibt die resultierende Grafik aus.
Diese Vorgehensweise ist sehr zweckmäßig, wenn Sie vermeiden wollen, dass
Sie immer wieder neue Button-Grafiken erstellen müssen, falls Sie die
Beschriftung eines Buttons ändern wollen. Mit der vorgestellten Methode
werden Ihr Buttons, samt Beschriftung, dynamisch generiert.
Inhaltsverzeichnis
gd_info — Retrieve information about the currently installed GD library
getimagesize — Ermittelt die Ausmaße einer GIF-, JPEG-, PNG- oder
SWF-Grafik-Datei