Autor | Zpráva | ||
---|---|---|---|
Jirka ze Slezska Profil * |
#1 · Zasláno: 14. 4. 2012, 17:41:52
Zdrávím, tvořím miniatury nějak takto:
$size = GetImageSize( $images_dir."/".$filename ); if($size[0] > $size[1]) { $thumbnail_width = 100; $thumbnail_height = (int)(100 * $size[1] / $size[0]); } else { $thumbnail_width = (int)(100 * $size[0] / $size[1]); $thumbnail_height = 100; } // vytvoření miniatury pomoci GD $function_suffix = $gd_function_suffix[$filetype]; $function_to_read = "ImageCreateFrom".$function_suffix; $function_to_write = "Image".$function_suffix; // přečtení zdroje $source_handle = $function_to_read ( $images_dir."/".$filename ); if($source_handle) { $destination_handle = ImageCreate ( $thumbnail_width, $thumbnail_height ); // změna velikosti ImageCopyResized( $destination_handle, $source_handle, 0, 0, 0, 0, $thumbnail_width, $thumbnail_height, $size[0], $size[1] ); } // uložení miniatury $function_to_write( $destination_handle, $images_dir."/tb_".$filename ); ImageDestroy($destination_handle ); Ovšem nelíbí se mi jejich barevnost :( Podívejte se sami, jak některé obrázky vypadají. http://vyvoj2.webovareseni.cz/fotogalerie/gal-kridlova-vrata.html Může mi někdo říct, čím to je a jak to opravit? Díky za všechny rady |
||
Davex Profil |
#2 · Zasláno: 14. 4. 2012, 18:48:38
Místo funkce
ImageCreate používej funkci imagecreatetruecolor a místo funkce ImageCopyResized používej funkci imagecopyresampled .
|
||
Jirka ze Slezska Profil * |
#3 · Zasláno: 16. 4. 2012, 11:09:31
Díky :)
|
||
Časová prodleva: 12 let
|
0