# Introduction

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.

Avec l'extension exif, vous pourrez travailler avec les informations stockées dans les en-têtes des images JPEG et TIFF. De cette façon, vous pourrez lire les métadonnées générées par les appareils numériques. Les fonctions exif ne nécessitent pas la bibliothèque GD.

> Note: Lisez la section sur les besoins pour savoir comment étendre les capacités des fonctions sur les images pour lire, écrire et modifier les images. Pour lire les métadonnées des photos prises avec des appareils numériques, vous devez utiliser l'extension exif mentionnée ci-dessus.

> Note: La fonction getimagesize() ne nécessite pas l'extension GD.

Attention

Tandis que la version empaqueter de librairie GD utilise le gestionaire de mémoire Zend pour alouer de la mémoire, mais les versions système non, donc memory_limit ne s'applique pas.

GD supporte un grand nombre de formats ; voici une liste de formats supportés par GD ainsi que des notes spécifiant la disponibilité du support en lecture/écriture.

Formats supportés par GD
Format | Support en lecture | Support en écriture | Notes
--- | --- | --- | ---
JPEG | `TRUE` | `TRUE` |
PNG | `TRUE` | `TRUE` |
GIF | `TRUE` | `TRUE` | Disponible depuis GD 2.0.28 et PHP 5.0.1
XBM | `TRUE` | `TRUE` |
XPM | `TRUE` | `FALSE` | Support en lecture sous Windows depuis PHP 5.3.19.
WBMP | `TRUE` | `TRUE` |
WebP | `TRUE` | `TRUE` | PHP 5.5+
BMP | `TRUE` | `TRUE` | Disponible depuis GD 2.1.0 et PHP 7.2.0

Malgré le fait que la plupart des formats soit disponible avec un support en lecture et en écriture dans le tableau ci-dessous, cela ne signifie pas que PHP a été compilé avec le support adéquate. Pour connaître les formats supportés par GD durant la compilation, utilisez la fonction gd_info() ; pour plus d'informations sur le support lors de la compilation d'un ou plusieurs formats, reportez-vous au chapitre sur l'installation.