Bonjour,

J'ai un probleme de redimensionnement, la qualité de l'image se dégrade tellement que parfois on ne reconnnait plus l'image d'origine :

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
 
function resizeImage($img_src,$img_dst,$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);
		// teste quel redimensionnement tient dans la zone
		if($test_h > $dst_h) $dst_w = $test_w;
		else $dst_h = $test_h;
 
		if($size[2]==1){
			// ceci est une image GIF
			$image1=imagecreatefromgif($img_src);
			$image2=imagecreate($dst_w,$dst_h);
			imagecopyresampled($image2,$image1,0,0,0,0,$dst_w,$dst_h,$size[0],$size[1]);
			imagegif($image2,$img_dst);
		}elseif($size[2]==2){
			// ceci est une image JPG
			$image1=imagecreatefromjpeg($img_src);
			$image2=imagecreate($dst_w,$dst_h);
			imagecopyresampled($image2,$image1,0,0,0,0,$dst_w,$dst_h,$size[0],$size[1]);
			imagejpeg($image2,$img_dst);
		}
		elseif($size[2]==3){
			// ceci est une image PNG
			$image1=imagecreatefrompng($img_src);
			$image2=imagecreate($dst_w,$dst_h);
			imagecopyresampled($image2,$image1,0,0,0,0,$dst_w,$dst_h,$size[0],$size[1]);
			imagepng($image2,$img_dst);
		}
		// Affiche les dimensions optimales
		echo "WIDTH=" . $dst_w . " HEIGHT=" . $dst_h;
	}