[ 989 087 ]
[ 38.107.191.84 ]
La Librairie GD (Redimensionnement d'une image)Le redimensionnement d'une image a pour intérêt de créer des vignettes, afin de pouvoir afficher les images originelles avec des dimensions adaptées pour une page web. Il existe deux fonctions pour réduire les images. imagecopyresized($image_dest, $image_src, $dest_x, $dest_y, $src_x, $src_y, $dest_largeur, $dest_hauteur, $src_largeur, $src_hauteur); La Deuxième fonction imagecopyresampled() : imagecopyresampled($image_dest, $image_src, $dest_x, $dest_y, $src_x, $src_y, $dest_largeur, $dest_hauteur, $src_largeur, $src_hauteur); $image_dest est l'image de destination. $image_src est l'image source. $dest_x et $dest_y sont les coordonnées du point de départ sur l'image de destination. $src_x et $src_y sont les coordonnées du point de départ de copie sur l'image source. $dest_largeur et $dest_hauteur sont les dimensions en pixels de la zone recopiée sur la destination. $src_largeur et $src_hauteur sont les dimensions en pixels de la zone à recopier à partir de la source.
Exemple avec notre image "imageGD_1.jpg" :
<?php
header("Content-type: image/jpeg");
// on ouvre la source
$file = $_SERVER['DOCUMENT_ROOT'].'/pages/PHP/images/imageGD_1.jpg';
$image_src = imagecreatefromjpeg($file);
$src_largeur = imagesx($image_src);
$src_hauteur = imagesy($image_src);
// ratio de l'image de destination
$ratio = .4;
// calcul des dimensions pour l'image de destination
$dest_largeur = $src_largeur * $ratio;
$dest_hauteur = $src_hauteur * $ratio;
// création de l'image de destination
$image_dest = imagecreatetruecolor($dest_largeur, $dest_hauteur);
// redimensionnement de l'image
imagecopyresampled($image_dest, $image_src, 0, 0, 0, 0, $dest_largeur, $dest_hauteur, $src_largeur, $src_hauteur);
imagejpeg($image_dest);
imagedestroy($image_dest);
imagedestroy($image_src);
?>
Remarque : imagecopyresized() et imagecopyresampled() s'emploient de la même manière. Image originale :
Image redimensionner avec un ratio de 0.4 :
|