Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3287 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  qualité affreuse d'une miniature

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

qualité affreuse d'une miniature

n°844990
jokari34
Posté le 08-09-2004 à 13:40:17  profilanswer
 

petit probleme de creation de miniatures.
 
en fait la miniature est crée dans les bones dimension, mais le probleme c'est que la qualité de l'image ets affreuse
 
pourtant dans imagejpeg j'ai mis 100 comme niveau de qualité (pour tester).
 
voici le code :
 
---------------------------------
 
function CreateEtiquette($NomFichier,$ExtentionFichier){  
 
 
 $Image= $NomFichier;  
 $Source= "../Images/Photos/Originales/";
 $Destination= "../Images/Photos/Miniatures/";  
 $ratio= 143;  
 
 
 
 
   
   if($ExtentionFichier=="gif" )
 {  
    $src=imagecreatefromgif($Source.$Image);  
   }  
   
   else if($ExtentionFichier=="jpeg" || $ExtentionFichier=="jpg" )
 {
 
   $src=imagecreatefromjpeg($Source.$Image);  
   }  
   
 else
 {  
    echo "Format d'image non supporté. Utilisez des *.gif ou *.jpg";  
    exit();  
   }  
   
  $size = getimagesize($Source.$Image);  
   
   if($size[0] > $size[1])
   {  
    $im=imagecreate(round(($ratio/$size[1])*$size[0]), $ratio);  
    imagecopyresized($im, $src, 0, 0, 0, 0, round(($ratio/$size[1])*$size[0]),
  $ratio, $size[0], $size[1]);  
   }  
   
   else
   {  
    $im=imagecreate($ratio, round(($ratio/$size[0])*$size[1]));  
   imagecopyresized($im, $src, 0, 0, 0, 0, $ratio,round($size[1]*($ratio/$size[0])), $size[0], $size[1]);  
   }  
   
  $envoyer=imagejpeg($im, $Destination."mini_".$Image, 100);
   
   if(!$envoyer)
 {  
    print "la création de l'étiquette a echoué pout l'image $Image";  
   }  
   
}

mood
Publicité
Posté le 08-09-2004 à 13:40:17  profilanswer
 

n°845008
neogally
Battle Angel Alita
Posté le 08-09-2004 à 13:57:58  profilanswer
 

tu utilise gd ?
 
si c le cas je sais que tu peut utiliser gd2 pour avoir un meilleur rendu.
 
je v regarder mon morceau de code ;)
 
tien voila ma fonction pour redim des images :
 

Code :
  1. function redimage($img_src,$img_dest,$dst_w,$dst_h) {
  2.    // Lit les dimensions de l'image
  3.    $size = GetImageSize($img_src); 
  4.    $src_w = $size[0]; $src_h = $size[1]; 
  5.    // Teste les dimensions tenant dans la zone
  6.    $test_h = round(($dst_w / $src_w) * $src_h);
  7.    $test_w = round(($dst_h / $src_h) * $src_w);
  8.    // Si Height final non précisé (0)
  9.    if(!$dst_h) $dst_h = $test_h;
  10.    // Sinon si Width final non précisé (0)
  11.    elseif(!$dst_w) $dst_w = $test_w;
  12.    // Sinon teste quel redimensionnement tient dans la zone
  13.    elseif($test_h>$dst_h) $dst_w = $test_w;
  14.    else $dst_h = $test_h;
  15.    // Crée une image vierge aux bonnes dimensions
  16.    $dst_im = ImageCreateTrueColor($dst_w,$dst_h);
  17.    // Copie dedans l'image initiale redimensionnée
  18.    $src_im = ImageCreateFromJpeg($img_src);
  19.    ImageCopyResampled($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
  20.    // Sauve la nouvelle image
  21.    ImageJpeg($dst_im,$img_dest);
  22.    // Détruis les tampons
  23.    ImageDestroy($dst_im); 
  24.    ImageDestroy($src_im);
  25.    }

n°845024
Xav_
The only one...
Posté le 08-09-2004 à 14:30:06  profilanswer
 

la solution est bonne neogally, tu fait un "ImageCreateTrueColor" alors que lui fait un "imagecreate", c'est pour ça que sa qualité est pas terrible.


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°845031
neogally
Battle Angel Alita
Posté le 08-09-2004 à 14:39:31  profilanswer
 

gd2 offre une meilleure qualité de rendu :)

n°845079
Hermes le ​Messager
Breton Quiétiste
Posté le 08-09-2004 à 15:01:30  profilanswer
 

Xav_ a écrit :

la solution est bonne neogally, tu fait un "ImageCreateTrueColor" alors que lui fait un "imagecreate", c'est pour ça que sa qualité est pas terrible.


 
+1, c'est en effet la solution.


---------------
Expert en expertises
n°845597
jolly
Posté le 09-09-2004 à 00:38:31  profilanswer
 

ben pareil !
 
reste que pour moi systématiquement avec les imagecreatetruecolor certains logiciels de visionage d'image m'ajoute une bande de 1-2 pixels noire à droite et en dessous de l'image ...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  qualité affreuse d'une miniature

 

Sujets relatifs
Perte de qualité lors d'une convertion Tiff => PNG via JAICréation automatique d'une image miniature
Thumb (création d'une image miniature) a largeur fixeCréer une miniature à partir d'un BLOB
Comment mettre des photos en miniature sur une pageCréation d'une miniature > Problème avec Mozilla
COMMENT GÉNÉRER UNE MINIATURE CONFORME À UN FICHIER IMAGE INITIAL ?Comment ouvrir un common dialog avec l'affichage miniature par défaut?
Les problèmes de qualité reliés au codeFonction CreateImageFromJPG() pb couleur miniature ...
Plus de sujets relatifs à : qualité affreuse d'une miniature


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)