Le langage PHP dispose de nombreuses fonctions permettant de travailler sur les images.

Fonction
Description
$tableau = getimagesize($fichier [, $tab_info]);
retourne la taille d'une image et un couple de balises HTML. Le tableau contient la largeur (index '0'), la hauteur ('1'), le type de l'image ('2') dont les valeurs sont : 1 = GIF, 2 = JPG, 3 = PNG et enfin le jeu de balises HTML ("height='hauteur' width='largeur'").
image2wbmp($ID_img [, $fichier [, $niveau_seuil]]);
crée une image WBMP et la conserve dans un fichier ou l'affiche dans le navigateur.
$nombre = ImageAlphaBlending($ID_img, $mode_blending);
modifie le mode de fondu (blending) d'une image si le mode est égal à true.
$nombre = ImageArc($ID_img, , $pos_x, $pos_y,
largeur, hauteur, $angle_début, $angle_fin, $couleur);
dessine une ellipse partielle.
$nombre = imagefilledarc($ID_img, , $pos_x, $pos_y,
$largeur, $hauteur, $angle_début, $angle_fin, $couleur, $style);
dessine une ellipse partielle et la remplit. L'argument style prend les valeurs suivantes :
Style Constante Description
1 img_ARC_CHORD connecte les angles de début et de fin avec une ligne droite.
2 img_ARC_PIE produit une ligne courbe.
3 img_ARC_NOFILL indique que l'arc doit être dessiné mais non rempli.
4 img_ARC_EDGED utilisé conjointement avec IMG_ARC_NOFILL, indique que les angles de début et de fin doivent être connectés au centre.
$nombre = ImageEllipse($ID_img, , $pos_x, $pos_y, $largeur, $hauteur, $couleur);
dessine une ellipse complète.
$nombre = ImageFilledEllipse($ID_img, , $pos_x, $pos_y,
$largeur, $hauteur, $couleur);
dessine une ellipse pleine avec une certaine couleur.
$nombre = ImageChar($ID_img, $police, $pos_x, $pos_y, $chaine, $couleur);
dessine horizontalement le premier caractère de la chaîne.
ImageCharUp($ID_img, $police, $pos_x, $pos_y, $chaine, $couleur);
dessine verticalement le premier caractère de la chaîne.
$nombre = ImageColorAllocate($ID_img, $rouge, $vert, $bleu);
alloue une couleur à une image.
$nombre = ImageColorDeAllocate($ID_img, $rouge, $vert, $bleu);
désalloue une couleur à une image.
$nombre = ImageColorAt($ID_img, $pos_x, $pos_y);
retourne l'index de la couleur à la position du pixel spécifié.
$nombre = ImageColorClosestAlpha($ID_img, $rouge, $vert, $bleu, $alpha);
retourne la couleur la plus proche en tenant compte du canal alpha.
$nombre = ImageColorClosest($ID_img, $rouge, $vert, $bleu);
retourne l'index de la couleur la plus proche d'une couleur spécifiée.
$nombre = ImageColorExact($ID_img, $rouge, $vert, $bleu);
retourne l'index de la couleur indiquée.
$nombre = ImageColorExactAlpha($ID_img, $rouge, $vert, $bleu, $alpha);
retourne l'index d'une couleur avec son canal alpha.
$nombre = ImageColorResolve($ID_img, $rouge, $vert, $bleu);
retourne l'index de la couleur donnée ou la plus proche possible.
$nombre = ImageColorResolveAlpha($ID_img, $rouge, $vert, $bleu, $alpha);
retourne un index de couleur ou son alternative la plus proche avec le canal alpha.
$nombre = ImageGammaCorrect($ID_img, $entree_gamma, $sortie_gamma);
applique une correction gamma à l'image.
true | false = ImageColorSet($ID_img, $index, $rouge, $vert, $bleu);
modifie la couleur dans une palette à l'index donné.
$tab_couleur = ImageColorsForIndex($ID_img, $index);
retourne la couleur associée à un index dans un tableau associatif dont les clés sont : red, green, blue.
$nb_couleur = ImageColorsTotal($ID_img);
retourne le nombre de couleurs d'une image.
ID_nouvelle_couleurImageColorTransparent($ID_img [, $ID_couleur]);
choisit la couleur transparente et retourne l'identificateur de la nouvelle couleur.
$nombre = ImageCopy($ID_img_dest,$ID_img_source,
$pos_x_dest, $pos_y_dest, $pos_x_source, $pos_y_source,
$largeur_source, $hauteur_source);
copie une partie d'une image source dans une image de destination.
$nombre = ImageCopyMerge($ID_img_dest,$ID_img_source,
$pos_x_dest, $pos_y_dest, $pos_x_source, $pos_y_source,
$largeur_source, $hauteur_source, $param);
copie et fusionne une partie d'une image avec un paramètre de fusion pouvant valoir de 0 à 100.
$nombre = ImageCopyMergeGray($ID_img_dest,$ID_img_source,
$pos_x_dest, $pos_y_dest, $pos_x_source, $pos_y_source,
$largeur_source, $hauteur_source, $param);
à l'instar de ImageCopyMerge, copie et fusionne une partie d'une image en niveaux de gris.
$nombre = ImageCopyResized($ID_img_dest,$ID_img_source,
$pos_x_dest, $pos_y_dest, $pos_x_source, $pos_y_source,
$largeur_dest, $hauteur_dest, $largeur_source, $hauteur_source);
copie et redimensionne une partie d'une image.
$nombre = ImageCopyResampled($ID_img_dest,$ID_img_source,
$pos_x_dest, $pos_y_dest, $pos_x_source, $pos_y_source,
$largeur_dest, $hauteur_dest, $largeur_source, $hauteur_source);
copie, redimensionne et rééchantillonne une image.
$ID_img = ImageCreate($hauteur, $largeur);
crée une nouvelle image à certaines dimensions.
$ID_img = imagecreatefromgif($fichier_gif);
crée une nouvelle image à partir d'un fichier ou d'une URL vers une image GIF.
$ID_img = ImageCreateTrueColor($hauteur, $largeur);
crée une nouvelle image en couleurs vraies.
ImageTrueColorTopalette($ID_img, $bool_granularité, $couleur);
convertit une image en couleurs vraies en image à palette.
$ID_img = ImageCreateFromJPEG($fichier_JPEG);
crée une nouvelle image JPEG à partir d'un fichier ou d'une URL.
$ID_img = ImageCreateFromPNG($fichier_PNG);
crée une nouvelle image PNG à partir d'un fichier ou d'une URL.
$ID_img = ImageCreateFromWBMP($fichier_WBMP);
crée une image depuis un fichier WBMP.
$ID_img = ImageCreateFromString($chaine);
crée une image à partir d'une chaîne.
$ID_img = ImageCreateFromXBM($fichier_XBM);
crée une image à partir d'un fichier XBM.
$ID_img = ImageCreateFromXPM($fichier_XPM);
crée une image à partir d'un fichier XPM.
$nombre = ImageDashedLine($ID_img, $x, $y, $X, $Y, $couleur);
trace une ligne pointillée entre les points x-y et X-Y.
$nombre = ImageDestroy($id_image);
détruit une image.
$nombre = ImageFill($id_image, $x, $y, $couleur);
remplit une image avec une certaine couleur et à partir des coordonnées spécifiées.
$nombre = ImageFilledPolygon($id_image, $tab_points, $nb_points, $couleur);
remplit d'une certaine couleur, un polygone dont les coordonnées des points sont spécifiées dans un tableau indicé (x1, y1, ..., xN, yN), le nombre de points devant être spécifié.
$nombre = ImageFilledRectangle($id_image, $x, $y, $X, $Y, $couleur);
remplit un rectangle d'une certaine couleur.
$nombre = ImageFillToBorder($id_image, $x, $y,
$couleur_bordure, $couleur_remplissage);
remplit une zone avec une certaine couleur délimité par la couleur de bordure.
$hauteur = ImageFontHeight($id_police);
retourne la hauteur de la police.
$largeur = ImageFontWidth($id_police);
retourne la largeur de la police.
$nombre = ImageGif($id_image [, $fichier]);
crée une image GIF vers un navigateur ou un fichier à partir d'une image.
$nombre = ImagePNG($id_image [, $fichier]);
crée une image PNG vers un navigateur ou un fichier à partir d'une image.
$nombre = ImageJPEG($id_image [, $fichier]);
crée une image JPEG vers un navigateur ou un fichier à partir d'une image.
$nombre = ImageWBMP($id_image [, $fichier [, $couleur_fond]]);
crée une image WBMP vers un navigateur ou un fichier à partir d'une image.
$nombre = ImageInterlace($id_image [, 0 | 1]);
active ou désactive le bit d'entrelacement.
ImageLine($id_image, $x, $y, $X, $Y, $couleur);
trace une ligne du point xy au point XY d'une certaine couleur, dans l'image.
$id_police = ImageLoadFont($fichier);
charge une nouvelle police à partir d'un fichier et retourne un identifiant.
$nombre = ImagePaletteCopy($id_img_destination, $id_img_source);
copie la palette d'une image source vers une autre de destination.
$nombre = ImagePolygon($id_image, $tab_points, $nb_points, $couleur);
dessine un polygone dans une image à partir de points spécifiés dans un tableau.
$tableau = ImagePSBBox($texte, $id_police, $taille, $espace, $largeur, $angle);
retourne un rectangle entourant un texte et dessiné avec une police PostScript Type 1.
$nombre = ImagePSEncodeFont($id_police, $fichier_encodage);
modifie le codage vectoriel d'un caractère dans une police.
ImagePSFreeFont($id_police);
libère les ressources occupées par une police PostScript Type 1.
$id_image = ImagePSLoadFont($fichier);
charge une police PostScript Type 1 à partir d'un fichier.
true | false = ImagePsExtendFont($id_police, $nb_reel);
étend ou condense une police de caractères selon une valeur à virgule flottante, dont une valeur inférieure à 1 provoquera une condensation.
$nombre = ImagePsSlantFont($id_police, $nb_reel);
incline une police de caractères selon une valeur à virgule flottante.
ImagePSText($id_image, $texte,
$id_police, $taille, $couleur_police, $couleur_fond, x, y
[, $espace [, $nb_espaces [, $angle [, $anti-aliasing]]]]);
dessine un texte sur une image avec une police PostScript Type 1 des couleurs, un positionnement, une taille et un nombre d'espacement, un angle d'inclinaison et une valeur d'anti-aliasage valant soit 4, soit 16. Le tableau indicé retourné contient dans l'ordre : l'abscisse inférieure gauche, l'ordonnée inférieure gauche, l'abscisse supérieure droite, l'ordonnée supérieure droite.
$nombre = ImageRectangle($id_image, $x, $y, $X, $Y, $couleur);
dessine un rectangle selon les coordonnnées et la couleur spécifiées.
$nombre = ImageSetPixel($id_image, $x, $y, $couleur);
dessine un pixel à la coordonnée spécifiée.
$nombre = imagesetbrush($id_image, $id_brosse);
modifie la brosse pour le dessin des lignes.
$nombre = ImageSetTile($id_image, $id_carrelage);
modifie le carrelage pour l'image.
$nombre = ImageSetThickness($id_image, $epaisseur);
modifie l'épaisseur d'un trait.
$nombre = ImageString($id_image, $num_police, $x, $y, $chaine, $couleur);
dessine une chaîne horizontale à la position xy, dans une des polices par défaut désignée par sa place (1, 2,...) et dans une certaine couleur.
$nombre = ImageStringUp($id_image, $num_police, $x, $y, $chaine, $couleur);
dessine une chaîne verticale à la position xy, dans une des polices par défaut désignée par sa place (1, 2,...) et dans une certaine couleur.
$largeur = ImageSX($id_image);
retourne la largeur d'une image.
$hauteur = ImageSY($id_image);
retourne la hauteur de l'image.
$tableau = ImageTTFBBox($taille, $angle, $fichier_police, $texte);
retourne les coordonnées d'un rectangle entourant un texte dessiné avec une police TrueType.
$nombre = ImageTTFText($id_image, $taille, $angle, $x, $y,
$couleur, $fichier_police, $texte);
dessine un texte avec une police TrueType.
ImageTypes();
Retourne les types d'images supportés par la version courante de PHP.
$nombre = JPEG2WBMP($nom_img_jpeg, $nom_img_wbmp,
$hauteur, $largeur);
convertit une image JPEG en image WBMP.
PNG2WBMP($nom_img_png, $nom_img_wbmp, $hauteur, $largeur);
convertit une image PNG en image WBMP.
$tableau = read_exif_data($fichier_jpeg);
retourne les entêtes EXIF d'une image JPEG dans un tableau.