(PHP 4, PHP 5, PHP 7, PHP 8)
imagejpeg — Affichage de l'image vers le navigateur ou dans un fichier
imagejpeg() crée un fichier JPEG depuis l'image fournie.
image
Un objet GdImage, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().
file
Le chemin ou un flux de ressource ouvert (qui sera automatiquement fermé après
le retour de cette fonction) vers lequel le fichier sera sauvegardé.
Si non-défini ou null
, le flux brute de l'image sera affiché directement.
quality
quality
est optionnel, et prend des valeurs dans
l'intervalle 0 (pire qualité, petit fichier) à 100 (meilleure qualité, gros fichier).
Par défaut (-1
), utilise la valeur de la qualité IJG par défaut (environ 75).
Cette fonction retourne true
en cas de succès ou false
si une erreur survient.
Toutefois, si libgd ne parvient pas à produire l'image, cette fonction retourne true
.
Version | Description |
---|---|
8.0.0 |
image attend une instance de GdImage désormais;
auparavant, une resource gd était attendue.
|
Exemple #1 Affichage d'une image JPEG vers le navigateur
<?php
// Création d'une image vide et ajout d'un texte
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Définit le contenu de l'en-tête - dans ce cas, image/jpeg
header('Content-Type: image/jpeg');
// Affichage de l'image
imagejpeg($im);
// Libération de la mémoire
imagedestroy($im);
?>
Résultat de l'exemple ci-dessus est similaire à :
Exemple #2 Sauvegarde d'une image JPEG dans un fichier
<?php
// Création d'une image vide et ajout d'un texte
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'Un texte simple', $text_color);
// Sauvegarde de l'image sous le nom 'simpletext.jpg'
imagejpeg($im, 'simpletext.jpg');
// Libération de la mémoire
imagedestroy($im);
?>
Exemple #3 Affichage de l'image avec une qualité de 75% vers le navigateur
<?php
// Création d'une image vide et ajout d'un texte
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'Un texte simple', $text_color);
// Définit le contenu de l'en-tête - dans ce cas, image/jpeg
header('Content-Type: image/jpeg');
// On ne fournit pas le nom du fichier (utilisation de la valeur NULL),
// puis, on définit la qualité à 75%
imagejpeg($im, NULL, 75);
// Libération de la mémoire
imagedestroy($im);
?>
Note:
Si vous voulez générer des images JPEG progressives, vous devez activer l'entrelacement à l'aide de la fonction imageinterlace().