|
Forum |
|
Réagissez
dans les forums
de JDN Développeurs
|
Pour les serveurs disposant de PHP compilé avec la
bibliothèque GD, il est possible de manipuler les images,
notamment de créer des miniatures directement sur le
serveur.
Voici donc une fonction qui se charge de simplifier la tâche
à l'utilisateur : plutôt que faire
appel à chaque fonctionnalité de GD, on les encapsule ici en demandant le minimum d'information
: chemin d'origine, chemin d'arrivée, nom du fichier
et largeur finale.
Ici, l'image "P1010002.JPG", placée dans
le dossier "/img", donnera une miniature de 100
pixels de largeur, placée dans le dossier "/img/mini".
Le code est prévu pour une image JPEG, mais les fonctions
de GD sont si explicites qu'il ne devrait pas être très
difficile d'adapter le script à d'autres formats...
Le
code
<?php
function miniature($chemin_original, $chemin_mini, $fichier_image,
$largeur_mini)
{
$image_origine = imagecreatefromjpeg("$chemin_original/$fichier_image");
$largeur_origine = imagesx($image_origine);
$hauteur_origine = imagesy($image_origine);
$hauteur_mini = $hauteur_origine * $largeur_mini
/ $largeur_origine;
$image_finale = imagecreate($largeur_mini, $hauteur_mini);
imagecopyresized($image_finale, $image_origine,
0, 0, 0, 0, $largeur_mini, $hauteur_mini, imagesx($image_origine),
imagesy($image_origine) );
imagejpeg($image_finale, "$chemin_mini/$fichier_image");
imagedestroy($image_finale);
return true;
}
miniature("img", "img/mini", "P1010002.JPG", "100")
?>
|