Mailinglisten-Archive |
> schau mal hier, auch wenn du nicht direkt Thumnails brauchst, solltest > du die Skripte verwenden koennen. > > http://www.php-center.de/beitraege/detail.php?a_id=34 > meinen senf muss ich auch noch dazu geben: leider hat das ding irgendwie eine macke und zwar folgende: bei diversen providern läuft GD in der Version "1.6.2 or higher" wenn ich nun ein JPEG Bild klein rechnen möchte und dieses via dateinamen speichern will, dann gibt der säckel (php) mir das bild einfach im Browser aus. selbst jegliches eingebautes echo etc. wird ignoriert. Bei anderen Bildformaten wie GIF, PNG, (TIFF) funktioniert die Ausgabe als Datei prächtig. Wenn einer eine Lösung weiss, dann bitte mir schreiben. Unteres script funktioniert auch ohne gdlib, aber auch nur dann wenn ImageMagick installiert ist :-) <?php // if height or width is 0 then it will be calculated correctly. $small_img_height = 100; $small_img_width = 0; $big_img = "linzbach.135868.jpg"; $small_img = "linzbach.klein.jpg"; /*****************************************/ exec("which convert",$a); $cpath = $a[0]; preg_match("=.*(\.[a-z]+)$=",$big_img,$extension); $extension_big = str_replace(".","",$extension[1]); preg_match("=.*(\.[a-z]+)$=",$small_img,$extension); $extension_small = str_replace(".","",$extension[1]); // eval("function imagecreatefrom".$extension_big."() ...") function imagecreatefromjpg($img){ return imagecreatefromjpeg($img); } function imagejpg($img){ return imagejpeg($img); } $fncCreate = "ImageCreateFrom$extension_big"; $fncSend = "Image$extension_small"; $big_img_sz = getimagesize($big_img); if($small_img_height <= 0){ $bip = ( $big_img_sz[1] / $big_img_sz[0] ); // 1 ist height - 0 width $small_img_height = round($small_img_width * $bip); } if($small_img_width <= 0){ $bip = ( $big_img_sz[0] / $big_img_sz[1] ); // 1 ist height - 0 width $small_img_width = round($small_img_height * $bip); } $my_img = _(at)_$fncCreate($big_img); if($my_img == false && $cpath != ""){ $pic_lowres = $small_img_width."x".$small_img_height; // max. Trumbnail $pic_quality = "50"; // JPEG-Quality in % exec($cpath." -geometry ".$pic_lowres." -quality ".$pic_quality." ".$big_img." ".$small_img,$res); echo $small_img; }elseif($my_img != false ){ $sm_img = imagecreate($small_img_width,$small_img_height); imagecopyresized($sm_img,$my_img,0,0,0,0,$small_img_width,$small_img_height, $big_img_sz[0],$big_img_sz[1]); $ri = $fncSend($sm_img,$small_img,0.5); imagedestroy($sm_img); imagedestroy($my_img); echo $small_img; // return $small_img }else{ echo false; // return false; } ?> kiri
php::bar PHP Wiki - Listenarchive