De belles miniatures de photos ?

VaN
Mammouth du PHP | 1107 Messages

27 nov. 2006, 18:28

Bonjour,

J'aimerais savoir comment les banques d'images font-elles pour afficher de superbes miniatures d'images, alors que les miennes ne sont pas géniales.

Les miennes crééent des espèces de petits pixels blancs.

j'utilise cette fonction pour les créer :
// créer le thumbnail
function thumbnail($image_path,$thumb_path,$image_name,$thumb_height)
{
    $src_img = imagecreatefromjpeg($image_path.$image_name.'.jpg');
    $origw 	= imagesx($src_img);
    $origh 	= imagesy($src_img);
    $new_h 	= $thumb_height;
    $diff 	= $origh / $new_h;
	
	$ratio = $origw / $origh;
	
	$new_w = $new_h * $ratio;
    $dst_img = imagecreatetruecolor($new_w,$new_h);
    imagecopyresized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,imagesx($src_img),imagesy($src_img));

    imagejpeg($dst_img, $thumb_path.$image_name.'.jpg', 60);
    return true;
} 
J'ai essayé egalement avec une qualité de 100, rien ne change.

Il y'a une énorme différence de qualité entre mon thumbnail :
Image

et celui d'une banque d'image :
Image

Auriez vous des solutions ?

ViPHP
fab
ViPHP | 2657 Messages

27 nov. 2006, 19:06

au lieu de imagecopyresized()
utilise :
http://fr.php.net/manual/fr/function.im ... ampled.php
Seul l'intelligent a le pouvoir de se trouver con
try { work(); } catch(FlemmeExeption $e) { sleep(84600); }

VaN
Mammouth du PHP | 1107 Messages

27 nov. 2006, 19:55

impec ! merci bien.

[Résolu]

EDIT : ah si quand meme un petit truc, est il possible de spécifier le degré d'echantillonage de la miniature ? C'est bcp mieux maintenant, mais peut etre un peu trop 'flou' a mon gout.

ViPHP
ViPHP | 3607 Messages

27 nov. 2006, 20:00

augmente la résolution dans la fonction imagejpg (met 100 à la place de 60 tu verras)

lacfab
Invité n'ayant pas de compte PHPfrance

01 mars 2007, 13:41

Petit Up pour dire que cette solution est extremement satisfaisante sur la qualité des images je ne m'en passe plus et je l'ai déjà appliqué plusieurs fois :-)

VaN
Mammouth du PHP | 1107 Messages

01 mars 2007, 18:23

je plussoie :D

imagecopyresampled() a changé ma vie :p