8791 sujets

Développement web côté serveur, CMS

Bonjour,
J'utilise un script pour redimensionner les images de façon proportionnelle qui marche parfaitement. Par contre sous Mozilla Firefox et Opera la qualité visuelle des images est dégradé comparé au rendu IE8 / Safari ou Google Chrome.

Y'a t-il une raison ? Quelq'un connait-il la solution ?

Pour info je vous mets le script
(ce script adapte la hauteur / largeur en fonction de la variable $affiche)


$valeur1=$tablo[$i]['chemin_image'];
$taille= getimagesize($valeur1);
$affiche=122; 

            $image='uploads/$valeur1'; // adresse de l'image 
            $taille=getimagesize($valeur1); 
            $largeur=$taille[0]; 
            $hauteur=$taille[1]; 

            //si mon image est verticale ou carrée 
            if ($hauteur>=$largeur) 
            { 
            $hauteur2=$affiche; 
            $largeur2=round(($hauteur2/$hauteur)*$largeur); 
            } 

            //si mon image est horizontale ou carrée 
            else 
            { 
            $largeur2=$affiche; 
            $hauteur2=round(($largeur2/$largeur)*$hauteur); 
            } 


et le code pour l'affichage

<img src="',$valeur1,'" width=',$largeur2,' height=',$hauteur2,'>


Merci pour vos réponses ou suggestions.
Modifié par pareto (29 Mar 2010 - 18:42)
Bonjour,

je suis le seul à qui ça fait ça ?
personne ne sait d'où ça peut venir ?
Modifié par pareto (29 Mar 2010 - 10:51)
salut

c'est vrai la qualité est très dégradée et c'est normal.


$valeur1='./photos/guitares/acoustiques/jumbo_sj_100.jpg';  
$affiche=122;               
$imgSrc = imagecreatefromjpeg($valeur1);
$largeurSrc = imagesx($imgSrc);
$hauteurSrc = imagesy($imgSrc);
if ($largeurSrc >= $hauteurSrc) { 
	  $pourcentage = ($affiche / $largeurSrc); 
} else { 
	$pourcentage = ($affiche / $hauteurSrc); 
}
$largeur = round($largeurSrc * $pourcentage); 
$hauteur = round($hauteurSrc * $pourcentage);
$l = $largeur;
$h = $hauteur;
$lSrc = $largeurSrc;
$hSrc = $hauteurSrc;
$mini = ImageCreateTrueColor ($l, $h);
ImageCopyResampled($mini, $imgSrc, 0, 0, 0, 0, $l, $h, $lSrc, $hSrc);
imagejpeg ($mini, basename($valeur1));
$infos = getimagesize(basename($valeur1));

 echo '<img src="'.basename($valeur1).'" '.$infos[3].' alt="" />';


là j'ai une image identique partout car non dépendante de l'algorithme du navigateur, c'est gd qui gére. c'est plus long mais c'est bien mieux visuellement.