1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| function miniature_make ($fid)
{
$foto = DOSSIER_PHOTOS. '_foto/' .$fid;
if ( file_exists($foto) )
{
// L'ORIGINALE EXISTE : CREATION DE LA MINIATURE
// dimension de la photo originale
list($breedte,$hoogte,$type) = getimagesize($foto);
// dimension de la miniature (selon portrait, paysage ou carrée)
if ( $breedte == $hoogte ) $hauteur = 128; elseif ( $breedte > $hoogte ) $hauteur = 96; else $hauteur = 128;
$largeur = round ( $breedte/$hoogte*$hauteur);
// création des sources et destination
switch ($type)
{
// La photo est la source
case 1: $src = imagecreatefromgif($foto); break;
case 2: $src = imagecreatefromjpeg($foto); break;
case 3: $src = imagecreatefrompng($foto); break;
default : exit;
}
$dst = imagecreatetruecolor($largeur, $hauteur); // On crée la miniature vide
// création et enregistrement de la miniature
imagecopyresampled($dst, $src, 0, 0, 0, 0, $largeur, $hauteur, $breedte, $hoogte);
$mini = DOSSIER_PHOTOS. '_mini/!' .$fid;
switch ($type)
{
// La photo est la source
case 1: imagegif($dst, $mini); break;
case 2: imagejpeg($dst, $mini); break;
case 3: imagepng($dst, $mini); break;
}
}
} |
Partager