Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Image-Funktion [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Image-Funktion


 
chrigu99
14-05-2006, 15:27 
 
Hi zusammen

Ich bin verzweifelt am versuchen, meine THumbnail-Funktion bei gif's transparenztauglich zu machen... wo stehe ich am falschen ende?

function make_thumb($img_src, $img_width=1024, $des_src, $quali = 90) {
ini_set("memory_limit",-1);
ini_set("max_execution_time",-1);
$end = substr($img_src, -5);
$end = stristr($end,'.');
if(stristr($end,'gif')) {
$im = imagecreatefromgif($img_src);
} else {
$im = imagecreatefromjpeg($img_src);
}
list($src_width, $src_height) = getimagesize($img_src);
if($src_width >= $src_height) {
$new_image_width = $img_width;
$new_image_height = $src_height / $src_width * $img_width;
}
if($src_width < $src_height) {
$new_image_height = $img_width;
$new_image_width = $src_width / $src_height * $img_width;
}
$new_image = imagecreatetruecolor($new_image_width, $new_image_height);
$color = imagecolorallocate($new_image,255,255,255);
imagecolortransparent($new_image,$color);
imagecopyresampled($new_image, $im, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
if(stristr($end,'gif')) {
imagegif($new_image, $des_src, $quali);
} else {
imagejpeg($new_image, $des_src, $quali);
}
imagedestroy($new_image);
}


grüsse, chris

 
ghostgambler
14-05-2006, 15:53 
 
das die GD-Lib das ggf. gar nicht unterstützt, das Ding ist nicht so toll wie es tut...

Was willst du denn machen? Verkleiner?
Wenn ja probier mal imagemagick (www.imagemagick.org)

 
chrigu99
14-05-2006, 16:58 
 
ja, nur ist es für ein frontend auf einem grossen webportal, demnach muss die funktion automatisch geschehen. ich kann von den benutzern nicht verlangen dass sie das bild zuerst genau auf die richtige pixel verkleinern und dann hochladen. und einfach mit <img> width und height will ich aus gründen der seitengrösse nicht machen. weitere ideen? und danke schonmal


mit gross meine ich 40'000 echte besucher oder 490'000 klicks im monat

 
ghostgambler
14-05-2006, 17:04 
 
du kannst imagemagick auch per exec() auf deinem Webspace aufrufen

 
chrigu99
14-05-2006, 17:14 
 
hmm ok danke erstmal. werde es mir sicher ansehen.

jedoch mit der GDlib, auch wenn sie nicht toll ist, gibt es denn gar keinen vernünftigen weg?

 
ghostgambler
14-05-2006, 17:31 
 
Original geschrieben von chrigu99
jedoch mit der GDlib, auch wenn sie nicht toll ist, gibt es denn gar keinen vernünftigen weg?
ich habe damals keinen gefunden ...
http://www.php-resource.de/forum/showthread.php?threadid=58004
und war es nach einem Tag auch satt, mit imagemagick hat es sofort funktioniert *shrug*

 
chrigu99
14-05-2006, 18:36 
 
hast du mir eventuell nen codeschnipsel?

grüsse, chris

 
ghostgambler
14-05-2006, 19:02 
 
Original geschrieben von chrigu99
hast du mir eventuell nen codeschnipsel?
mein im letzten Post verlinkter Thread unterster Post

 
chrigu99
14-05-2006, 19:05 
 
Entschuldige bitte, hab das übersehen ;)

Danke schonmal und liebe Grüsse aus der Schweiz

Chris


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:52 Uhr.