Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Images > Imagick
Imagick Forum d'entraide pour l'extension Imagick permettant de manipuler des images en PHP (port de l'API ImageMagick).
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/03/2006, 11h26   #1
En attente de confirmation mail
 
Inscription : août 2004
Messages : 122
Détails du profil
Informations forums :
Inscription : août 2004
Messages : 122
Points : 32
Points : 32
Envoyer un message via MSN à clemsouz
Par défaut [ImageMagick] Résultat de qualité médiocre

Bonjour à tous,
voilà, je génère des vignettes à partir d'image uploadé, après qlq soucis évoqué ici :
http://www.developpez.net/forums/viewtopic.php?t=479477

mon scrypt marche mais les vignettes son d'une qualité très médiocre

j'ai effectué qlq retouche sur mon scrypt pour donné ceci :
Code :
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 thumbail($path, $filename, $maxWidth, $maxHeight){//Créer une image à partir de $file
	$file = $path.$filename;
    $img = ImageCreateFromJpeg("$file");
    //Dimensions de l'image
    $imgWidth = imagesx($img);
    $imgHeight = imagesy($img);
    //Facteur largeur/hauteur des dimensions max
    $whFact = $maxWidth/$maxHeight;
    //Facteur largeur/hauteur de l'original
    $imgWhFact = $imgWidth/$imgHeight;
    //fixe les dimensions du thumb
    if($whFact < $imgWhFact){//Si largeur déterminante
        $thumbWidth  = $maxWidth;
        $thumbHeight = $thumbWidth/$imgWhFact;
    } else { //Si hauteur déterminante
        $thumbHeight = $maxHeight;
        $thumbWidth = $thumbHeight*$imgWhFact;
    }
 
    //Crée le thumb (image réduite)
    $imgThumb = ImageCreateTruecolor($thumbWidth, $thumbHeight);
	imageantialias( $imgThumb, True );
    //Insère l'image de base redimensionnée
    ImageCopyResized($imgThumb, $img, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $imgWidth, $imgHeight);
	imageantialias( $imgThumb, True );
    //Nom du fichier thumb
    $imgThumbName = $path."thumb_".$filename;
    //Crée le fichier thumb
    $fp = fopen($imgThumbName, "w");
    fclose($fp);
    //Renvoie le thumb créé
    ImageJpeg($imgThumb, $imgThumbName,100);
    return $imgThumbName;
}
mais rien n'y fait

merci d'avance
clemsouz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2006, 11h29   #2
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 823
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 823
Points : 3 454
Points : 3 454
Remplace ton imagecopyresized( ) par imagecopyresampled( )
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/03/2006, 11h40   #3
En attente de confirmation mail
 
Inscription : août 2004
Messages : 122
Détails du profil
Informations forums :
Inscription : août 2004
Messages : 122
Points : 32
Points : 32
Envoyer un message via MSN à clemsouz
effectivement c'est beaucoup mieux, merci Seb
clemsouz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h00.


 
 
 
 
Partenaires

Hébergement Web