Redimmensionnement d'image



  • Voilà, je suis en train d'installer un script pour gérer un système 'upload d'images que j'ai trouve sur http://www.asp-php.net/ressources/bouts_de_code.aspx?id=743.

    Mais voilà, j'ai un problème sur ce bout de code :

    <?php
    $grand=$_POST["hfichier"];
    $nom=$_POST["hname"];
    $folder_min=$_POST["hfolder_min"];
    $ratio = .10;
    // Calcul des nouvelles dimensions, list est un moyen plus pratique pour ne récupérer que ce qu'on veut
    list($largeur, $hauteur) = getimagesize("$grand"); 
    $n_largeur = $largeur * $ratio;
    $n_hauteur = $hauteur * $ratio;
    //création de la destination
    $destination = imagecreatetruecolor($n_largeur, $n_hauteur);
    //on ouvre la source
    $source = imagecreatefromjpeg("$grand");
    // Redimensionnement
    imagecopyresized($destination, $source, 0, 0, 0, 0, $n_largeur, $n_hauteur, $largeur, $hauteur);
    imagejpeg($destination);
    //Enregistrement de l'image créée
    $file = "$folder_min$nom";
    //enregistre l'image dans le répertoire images à la racine du site.
    imageJpeg($destination, $file); 
    imagedestroy($destination);
    imagedestroy($source)
    ?>
    <body>
    <script type="text/javascript" langage="JavaScript">
    <!--
    parent.location = "index.php";
    // -->
    </script>
    

    A ce que j'ai compris, il créer une miniature de l'image uploader en divisant ses dimensions par 10, mais le problème c'est que sur la page d'index, toutes les miniatures n'ont pas les même dimmensions.
    J'ai essayé de rectifier ça (mais je ne suis pas très bon en php) avec un boucle, etc… mais j'y arrive pas.

    Quelque'un aurait-il une solution pour générer des miniatures de mêmes tailles (ou à peu près) ?

    Merci d'avance.



  • Essais sa:

    <?php
    $grand=$_POST['hfichier'];
    $nom=$_POST['hname'];
    $folder_min=$_POST['hfolder_min'];
    $ratio = 0.10;
    // Calcul des nouvelles dimensions, list est un moyen plus pratique pour ne récupérer que ce qu'on veut
    list($largeur, $hauteur) = getimagesize($grand);
    $n_largeur = $largeur * $ratio;
    $n_hauteur = $hauteur * $ratio;
    //création de la destination
    $destination = imagecreatetruecolor($n_largeur, $n_hauteur);
    //on ouvre la source
    $source = imagecreatefromjpeg($grand);
    // Redimensionnement
    imagecopyresized($destination, $source, 0, 0, 0, 0, $n_largeur, $n_hauteur, $largeur, $hauteur);
    imagejpeg($destination);
    //Enregistrement de l'image créée
    $file = $folder_min.''.$nom;
    //enregistre l'image dans le répertoire images à la racine du site.
    imageJpeg($destination, $file);
    imagedestroy($destination);
    imagedestroy($source)
    ?>
    <body>
    <script type="text/javascript" langage="JavaScript">
    <!--
    parent.location = 'index.php';
    // -->
    </script>
    


  • Non sa reste pareil, les miniatures crées n'ont pas toute la même taille…


Log in to reply