|
TUTORIEL/PRATIQUE
GD, une bibliothèque graphique pour PHP
La bibliothèque graphique GD permet de créer, de modifier et de supprimer des images. Il est aussi possible d'accéder aux informations IPTC stockées dans les images reconnaissant cette norme. Définie par l'organisme de normalisation du secteur de la presse, IPTC permet d'inclure des informations de copyright dans des fichiers images. C'est une méthode très utilisée par les journalistes et les photographes.
GD propose des fonctions pour manipuler les images : créer, modifier, enregistrer, ajouter des informations, ou les supprimer. Chaque fonction va renvoyer un identifiant de ressource. Depuis PHP 4.3, une version de GD est incluse dans le langage. Administrer des images peut demander beaucoup de ressources mémoire et processeur. L'utilisation d'un cache peut être utile pour éviter de recréer l'image à chaque appel.
Il est nécessaire d'installer la librairie GD sur le serveur pour activer les fonctions. Sous Linux, son déploiement demande d'éditer le fichier php.ini et d'ajouter à la fin l'extension "extension=gd.so". Même processus sous EasyPHP: édition de php.ini (il est nécessaire ensuite d'enlever l'instruction de commentaire (;) devant "extension=php_gd2.dll").
Pour vérifier le bon fonctionnement de GD, faire un phpinfo() en créant un fichier qui sera appellé du serveur (via le navigateur), et qui contient le script suivant: <?php phpinfo(); ?> Vérifier que GD Support est à "enabled". Dans la partie HTML, faire un lien image vers un fichier PHP qui va générer l'image.
Le fichier image.php va contenir les instructions pour construire et utiliser des images. L'origine du repère d'une image se situe en haut à gauche. Depuis la version 2.0 de GD, le format GIF n'est plus supporté et a été remplacé par le format PNG.
Il existe d'autres bibliothèques Open Source pour PHP. Par exemple, JpGraph permet de créer des graphes, totalement orientés objet. Pour cela, il faut importer les bibliothèques de base (JpGraph.php) avec une include ou les bibliothèque(s) concernant le type de graphe souhaité (ex : JpGraph_line.php).
Une alternative à JpGraph est Artichow. Gallery est une autre bibliothèque Open Source pour la gestion d'albums photo.
|