Redimensionner une image php

wolf -  
 Marc -
bonjour tout le monde

voilà j'essaye d'adapter un système pour réduire la taille des avatar sur mon forum ( externe à mon site )

j'ai essayer ce petit code
header ("Content-type: image/jpg");

// on recupère toute les information de l'avatar
// largeur,hauteur,type,caractere
// $avatar est tirer d'une requete sql

$info_avatar = GetImageSize($avatar);

$largeur_max = 70;
$hauteur_max = 70;

$img = @ImageCreateTrueColor($largeur_max,$hauteur_max)
or die("Erreur lors de la création de l'image");

$source = ImageCreateFromJpeg($avatar);
$largeur_avatar = imagesx($source);
$hauteur_avatar = imagesy($source);

ImageCopyResampled($img,$source,8,8,0,0,$largeur_max-(2*8),$hauteur_max-(2*8),$largeur_avatar,$hauteur_avatar);

$blanc = ImageColorAllocate ($img, 255, 255, 255);

ImageString($img,0,12,$hauteur_max-18,"$avatar-($largeur_avatar x $hauteur_avatar)",$blanc);

ImageJpeg($img);


met là j'ai une erreur etant donner qu'il y'a du code avant le header de ma fonction avec un code ilisible

y'aurais t'il autre possibilité pour réduire c'est avatar a une largeur maximum de 70 pixels

merci d'avance de votre aide
wolf

4 réponses

  1. Ahima
     
    Autant donner les sources original mehdikoris, c'est repesctueux du travail des autre de plus.

    Voici le code pompé par mehdikoris avec les explication de l'auteur et la librairie image de l'auteur qui fait pleins de truc ^^
    Il faut telecharger le zip ,les fichier php sont dedans.

    http://www.asp-php.net/tutorial/asp-php/php-redim-image-upload.php
    12
  2. Marc
     
    Comment t'expliquer, y'a LARGEMENT MIEUX !!!
    Ce message sera pour tous ceux qui veulent faire ça !

    Il faut inserer le fichier ainsi

    <img src="updatephoto.php?photo=<?php echo $rep.$f.'/'.$photo.''; ?>"

    et <?php Header("Content-type: image/jpeg");
    $chemin = $_GET['photo'];
    // vous pouvez travailler en url relative aussi: img.jpg
    $x = 150;
    $y = 105; # hauteur a redimensionner

    $img_new = imagecreatefromjpeg($chemin);
    $size = getimagesize($chemin);
    $img_mini = imagecreatetruecolor ($x, $y);
    imagecopyresampled ($img_mini,$img_new,0,0,0,0,$x,$y,$size[0],$size[1]);
    imagejpeg($img_mini);
    ?>
    4
  3. wolf
     
    ps : redimensionner sans deformer l'image
    0
  4. mehdikoris Messages postés 168 Statut Membre 32
     
    essayer ce script

    <?
    function redimage($img_src,$dst_w,$dst_h) {
    // Lit les dimensions de l'image
    $size = GetImageSize($img_src);
    $src_w = $size[0]; $src_h = $size[1];

    // Teste les dimensions tenant dans la zone
    $test_h = round(($dst_w / $src_w) * $src_h);
    $test_w = round(($dst_h / $src_h) * $src_w);

    // Si Height final non précisé (0)
    if(!$dst_h) $dst_h = $test_h;

    // Sinon si Width final non précisé (0)
    elseif(!$dst_w) $dst_w = $test_w;

    // Sinon teste quel redimensionnement tient dans la zone
    elseif($test_h>$dst_h) $dst_w = $test_w;
    else $dst_h = $test_h;

    // Affiche les dimensions optimales
    echo "WIDTH=".$dst_w." HEIGHT=".$dst_h;
    }
    ?>

    //appel de la fonction

    <IMG SRC="monimage.jpg" <?redimage("monimage.jpg",XX,YY)?>>
    0