Salut à tous, j'ai une fonction qui permet de redimensionner une image stocké sur le sevreur, elle la redimensionne, baisse le poids,.

Le problème que j'ai c'est qu'elle dessature l'image, , tandis que le redimensionnement a lieu, l'anregistrement dans le dossier de destination, l'ecrasement de l'original, berf tout marche, sauf que des que la fonction est lancée, en sortie j'ai ma photo redimensionnée, MAIS déssaturer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
 
function modif_image($img_source,$img_destination,$largeur,$longueur) {
   // Lit les dimensions de l'image
   $size = getimagesize($img_source);  
   $src_w = $size[0];
   $src_h = $size[1];  
   // Teste les dimensions tenant dans la zone
   $test_h = round(($largeur / $src_w) * $src_h);
   $test_w = round(($longueur / $src_h) * $src_w);
   // Si Height final non précisé (0)
   if(!$longueur) $longueur = $test_h;
   // Sinon si Width final non précisé (0)
   elseif(!$largeur) $largeur = $test_w;
   // Sinon teste quel redimensionnement tient dans la zone
   elseif($test_h>$longueur) $largeur = $test_w;
   else $longueur = $test_h;
 
   // La vignette existe ?
   $test = (file_exists($img_destination));
   // L'original a été modifié ?
   if($test)
      $test = (filemtime($img_destination)>filemtime($img_source));
   // Les dimensions de la vignette sont correctes ?
   if($test) {
      $size2 = getimagesize($img_dest);
      $test = ($size2[0]==$dst_w);
      $test = ($size2[1]==$dst_h);
   }
 
   // Créer la vignette ?
   if(!$test) {
      // Crée une image vierge aux bonnes dimensions
      $creation_im_vierge= imagecreate($largeur,$longueur);
      // Copie dedans l'image initiale redimensionnée
      $copier_dans_im = imagecreatefromjpeg($img_source);
 
 
 
      imagecopyresized($creation_im_vierge, $copier_dans_im,0,0,0,0,$largeur,$longueur,$src_w,$src_h);
      // Sauve la nouvelle image
      imagejpeg($creation_im_vierge,$img_destination);
      // Détruis les tampons
      imagedestroy($creation_im_vierge);  
      imagedestroy( $copier_dans_im);
   }
 
   // Affiche le descritif de la vignette
   echo "SRC='".$img_destination."' WIDTH=".$largeur." HEIGHT=".$longueur;
}
j'appel comme ceci la fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<img <?php modif_image('images_expo/soleil.jpg','images_expo/dest/soleil.jpg','300','150'); ?>">
Voila si quelqu'un sait pour quoi j'ai une image dessaturer qui s'enregistre et qui s'affiche

je suis preneur