ugrás a tartalomhoz

ImageCopyResized színhiba

Anonymous · 2006. Feb. 9. (Cs), 18.34
Üdv!
Talán tudok segíteni, valószínű valami lokális gond lehet. A probléma a következő:
Van a user, belép az oldalra, és feltölthet képeket. Ez eddig okés, de akarok csinálni kis képeket belőle előnézethez meg ide-oda, és ehhez a ImageCopyResized parancsot használom, ami meg is csinálja a kis képet, de a színeket összemossa, elrontja, szóval nem néz ki jól. Mi lehet a gond? Vagy ez a függvény alapból ilyen? Kipróbáltam több képpel, egyik sem az igazi. Itt a kódrészlet, ami csinálja a kis képet:

function smallpic($nev)
	{

$first=ImageCreateFromJPEG("avatar/".$nev.".jpg");
$thumbname="avatar/".$nev."_small.jpg";

 $width = imagesx($first);
 $height = imagesy($first);

 $scale = min(100/$width, 100/$height);

 $new_width = floor($scale*$width);
 $new_height = floor($scale*$height);

 $second=ImageCreate($new_width, $new_height);

 ImageCopyResized($second,$first,0,0,0,0,$new_width,$new_height,$width,$height);

 ImageJPEG($second,$thumbname);

}
 
1

imagecopyresampled

Poetro · 2006. Feb. 9. (Cs), 19.02
Az imagecopyresampled jóval szebb kimenetet produkál, mint az imagecopyresized. Ehhez mondjuk GD 2.0.1 kell, de ez már PHP 4.0.6 óta elérhető, és a legtöbb rendszeren fent is van.
Másik megoldás lehet, ha van a szerveren ImageMagick, akkor még szebb képeket tudsz kapni.
--------
Poetro
2

Megoldás

Anonymous · 2006. Feb. 9. (Cs), 21.27
Üdv.. sikerült a dolog, a megoldás a ImageCreatetruecolor parancs volt, amivel nem 256+1 színű képet, hanem igazi true color JPG-t csinálhattam.
köszi