Génerer une miniature d'image

Rechercher

Génerer une miniature d'image

Par ZikoNFS  -  1 reponse  -  Le 11/08/2008 21:37  -  Editer  - 

Salut à tous et à toutes.

J'aimerais savoir comment génerer une miniature d'une image par une fonction php.

<?php
// éditez les 2 variables ci-dessous en fonction du résultat souhaité :
$largeur = "100"; // correspond à la largeur de l'image souhaitée
$hauteur ="100"; // correspond à la hauteur de l'image souhaitée
// et voici la création de la miniature...
header("Content-Type: image/jpeg");
list($width, $height, $type, $attr) = getimagesize($_GET['pic']);
if($type == "1")
{
  $img_in = imagecreatefromgif($_GET['pic']);
}
if($type == "2")
{
  $img_in = imagecreatefromjpeg($_GET['pic']);
}
if($type == "3")
{
  $img_in = imagecreatefrompng($_GET['pic']);
}
$img_out = imagecreatetruecolor($largeur, $hauteur);
imagecopyresampled($img_out, $img_in, 0, 0, 0, 0, imagesx($img_out), imagesy($img_out), imagesx($img_in), imagesy($img_in));
$t = imagejpeg($img_out);
echo $t;
?>

Ce code est correct sauf qu'il ne garde pas les proportion de l'image.

Merci pour votre aide.

 

Réponses apportées à cette discussion

Par Emacs  -  Le 12/08/2008 00:53  -  Haut de page  - 

Bonsoir,

Pour conserver les proportions, il faut calculer le ratio entre les dimensions de l'image. Le ratio se calcule en divisant la largeur par la hauteur.

Tu trouveras des exemples sur le site PHPCS.com. De plus, je t'invite fortement à contrôler ce qui arrive dans ta variable $_GET et à la sécuriser, car là tu peux potentiellement t'exposer à des failles de sécurité ou à des dénis de service si un robot s'amuse à utiliser ton script à ton insu...

++

Hugo.

 

Ajouter une réponse à la discussion

Seuls les membres connectés sont autorisés à poster dans les forums !

Identifiez-vous
Join |  ID/MDP? |