Redimensionnement image : flou

conan76 Messages postés 32 Date d'inscription lundi 28 juillet 2003 Statut Membre Dernière intervention 9 décembre 2013 - 12 janv. 2013 à 18:24
cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 - 25 janv. 2013 à 14:00
Bonjour,

Je viens ici parce que je ne trouve pas ce qui cloche.

Je fais du redimensionnement via c'est quelques lignes extraites de ma fonction, et il m'arrive d'avoir des images floues et notamment sur le cas joint ici.

même ne jouant pas sur le taux de compression j'ai le problème.

image source
image résultat

Le code est classique :
(nota : "template" = les dimensions définies en fonction de la catégorie d'image)

function redim($source,$sourceInfo,$destName,$destTemplate)
{
$imgSrc = imagecreatefromjpeg($source);

$InfosImgSrc['w'] = $sourceInfo[0];
$InfosImgSrc['h'] = $sourceInfo[1];

// -- Template
$ratioTemplate = $destTemplate['w'] / $destTemplate['h'];
// -- Calcul du ratio de l'image à réduire
$ratioRedim = $InfosImgSrc['w'] / $InfosImgSrc['h'];

//Nouvelle image : calcul des dimensions
if ($ratioRedim<$ratioTemplate)
{
    $newimg['h'] = $destTemplate['h'];
    $newimg['w'] = $InfosImgSrc['w'] * ($destTemplate['h'] / $InfosImgSrc['h']);
}
else
{
    $newimg['w'] = $destTemplate['w'];
    $newimg['h'] = $InfosImgSrc['h'] * ($destTemplate['w'] / $InfosImgSrc['w']);
}

$tauxComp = 100;

if (isset($destTemplate['comp']))
$tauxComp = $destTemplate['comp'];

try {
$NouvelleImage = imagecreatetruecolor($newimg['w'], $newimg['h']);
}catch(Exception $e)
{
imagedestroy($imgSrc);
return('Exception lors de la création de la nouvelle image: '.$e->getMessage());
}
imagecopyresampled($NouvelleImage , $imgSrc, 0, 0, 0, 0, $newimg['w'], $newimg['h'], $InfosImgSrc['w'], $InfosImgSrc['h']);
imagejpeg($NouvelleImage,$destName,$tauxComp);
imagedestroy($imgSrc);
imagedestroy($NouvelleImage);


Si quelqu'un peut m'aider ! Merci.

2 réponses

Bonjour,


Perso je n'ai pas d'image flou sur ton exemple (opéra).
Peut être un problème de ton navigateur ?
0
cs_stay Messages postés 493 Date d'inscription jeudi 7 juillet 2005 Statut Membre Dernière intervention 24 mai 2017 4
25 janv. 2013 à 14:00
Salut, sinon, tu fais un [Ctrl]+[-] sur ton navigateur ;) cela peut aidée.

stéph
0
Rejoignez-nous