PHP ne se limite pas à la génération de pages HTML. Il peut aussi servir
à créer et manipuler des images, dans un grand choix de formats,
comme GIF, PNG, JPEG, WBMP et XPM. Et PHP peut même générer
directement des images pour le navigateur, avec la bibliothèque GD.
GD et PHP auront aussi besoin d'autres bibliothèques, en fonction
des formats que vous souhaitez utiliser.
Vous pouvez utiliser les fonctions PHP pour obtenir les
tailles des images aux formats
JPEG, GIF,
PNG, SWF,
TIFF et JPEG2000.
Note :
Lisez la section sur les pré-requis pour savoir comment améliorer
les possibilités de lecture, modification et écriture d'images, ainsi
que les possibilités de lecture d'images prises par des appareils
numériques.
Si vous disposez de la bibliothèque GD (disponible
à http://www.boutell.com/gd/) vous pourrez aussi créer
et manipuler des images.
Les formats des images que vous pourrez manipuler dépendent de la
version de GD que vous installerez, et de toutes autres bibliothèques
dont GD a besoin pour traiter ces images. Les versions
antérieures à la version 1.6 supportent le
GIF, mais pas le PNG.
À partir des version de GD supérieures à 1.6
et inférieures à 2.0.28, c'est le contraire. Le support du GIF
a été rajouté Ã partir de la verison 2.0.28.
Note :
Depuis PHP 4.3, il existe une version de GD
qui est distribuée avec
PHP. Cette version contient des fonctionnalités supplémentaires, comme
les canaux alpha, et il est recommandé de l'utiliser de préférence Ã
la bibliothèque externe, car elle est mieux supportée, et bien plus
stable.
Note :
Le support pour GD 1.x a été supprimé Ã partir de PHP 6.0.0, qui requiert 2.0.33 ou supérieur.
Vous pouvez aussi améliorer GD en lui ajoutant des formats
d'images supplémentaires.
Tableau 1. Formats d'images supportés
Format d'image
Bibliothèque à télécharger
Notes
gif
Uniquement supporté en versions de GD antérieures à la
version 1.6 et supérieures ou égales à la version 2.0.28.
Le support des images GIF est disponible en
lecture seule depuis PHP 4.3.0, et dans la version de la bibliothèque
qui est fournie avec la distribution de PHP.
L'écriture est supportée depuis PHP 4.3.9 et PHP 5.0.1.
Si vous avez compilé PHP avec l'option --enable-exif
vous serez capable d'accéder aux données stockées dans les en-têtes des images
JPEG et TIFF. De cette façon, vous
pouvez lire les méta données générées par les appareils numériques.
Ces fonctions ne requièrent pas la bibliothèque GD.
Pour activer le support de GD, vous devez compiler PHP avec
l'option --with-gd[=DIR], où DIR est le
dossier d'installation de GD. Il est recommandé d'utiliser la version
de GD qui est distribuée avec PHP, en utilisant simplement l'option
--with-gd.
La bibliothèque GD requiert libpng et
libjpeg pour compiler.
Sous Windows, vous devez inclure la bibliothèque
php_gd2.dll comme extension dans le fichier php.ini.
La bibliothèque php_gd.dll a été supprimée de
PHP 4.3.2. Notez aussi que les fonctions conseillées truecolor, comme
imagecreatetruecolor(), requièrent GD2.
Note :
Pour activer le support exif sur Windows, php_mbstring.dll doit être chargée
avant php_exif.dll dans le php.ini.
Pour désactiver le support de GD en PHP 3, ajoutez simplement
l'option --without-gd dans votre ligne de
configuration.
Augmentez les possibilités des GD de gérer d'autres formats d'images
en spécifiant les options --with-XXXX de compilation
suivantes :
Tableau 3. Formats d'image supportés
Format d'image
Option de compilation
jpeg-6b
Pour activer le support de la bibliothèque JPEG-6b, ajouter l'option
--with-jpeg-dir=DIR.
png
Pour activer le support de la bibliothèque PNG, ajouter l'option
--with-png-dir=DIR. Notez que libpng
requiert la bibliothèque zlib
et, donc, il vous faudra ajouter aussi
--with-zlib-dir[=DIR] dans votre ligne
de compilation.
xpm
Pour activer le support de la bibliothèque XPM, ajoutez l'option
--with-xpm-dir=DIR. Si le script
de compilation n'est pas capable de trouver les bibliothèques
nécessaires, il vous faudra ajouter le chemin vers les bibliothèques X11.
Note :
Lorsque vous compilez PHP avec libpng, vous devez utiliser la même
version que celle liée à la bibliothèque GD.
Augmentez les possibilités de GD pour qu'elle manipule différents types
de polices de caractères en ajoutant les options
--with-XXXX de compilation suivantes :
Tableau 4. Bibliothèques des polices de caractères supportées
Bibliothèque
Option de configuration
FreeType 1.x
Pour activer le support de FreeType 1.x, ajoutez l'option
--with-ttf[=DIR].
FreeType 2
Pour activer le support de FreeType 2, ajoutez l'option
--with-freetype-dir=DIR.
T1lib
Pour activer le support de T1lib (Type 1 fonts), ajoutez l'option
--with-t1lib[=DIR].
Chaînes TrueType
Pour activer le support des chaînes de caractères TrueType,
ajoutez l'option
--enable-gd-native-ttf.
Ces constantes sont définies par cette
extension, et ne sont disponibles que si cette extension a été compilée avec
PHP, ou bien chargée au moment de l'exécution.
Cet exemple doit être appelé depuis une page HTML avec une balise
image telle que : <img src="button.php?text">.
Le script ci-dessus, button.php, prend la chaîne
"texte" et l'inscrit
sur le fond d'image appelé "images/button1.png",
puis l'affiche. C'est une méthode très pratique pour éviter de redessiner un
nouveau bouton, dès que vous changez son texte. De cette façon, ils sont
générés dynamiquement.
Table des matières
gd_info --
Retourne des informations à propos de la bibliothèque GD installée