Fortgeschrittene - Freitag, Februar 22, 2008 16:22
Thumbnail erzeugen mit PHP
Mit dieser Funktion könnt ihr Thumbnails (Vorschaubilder) von JPG Bilder erzeugen.
Der Vorteil gegenüber der Möglichkeit die Bildgröße per HTML anzugeben, ist eine deutlich geringere Ladezeit.
Es empfiehlt sich aber, die Bilder zu cachen.
Das ist die Funktion:
<?php
function thumbnail($img_src, $img_width , $img_height) {
$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 * $img_width / $src_width;
if($src_width < $src_height) { $new_image_height = $img_width;
$new_image_width = $src_width * $img_height / $src_height;
}
$new_image = imagecreatetruecolor($new_image_width, $new_image_height);
imagecopyresampled($new_image, $im, 0, 0, 0, 0, $new_image_width,$new_image_height, $src_width, $src_height);
imagejpeg($new_image,“tumbs/$img_src”, 100);
return ‘<img src=”‘.“tumbs/$img_src”.‘” alt=”Thumbnail : ’$img_src.‘” />’;
}
?>Und so ruft man die Funktion auf:
<?php
$bild = thumbnail(“bild1.jpg”, “100″ , “100″);
echo $bild;
?>2 Kommentare
Fred
Wolla
mach in die Zeile über dem 2. if eine schließende geschweifte Klammer. Das erste if hat nur eine {, aber keine }
Kommentieren
habs nich zum laufen bekommen. ein fehler is mir aufgefallen: die geschweift klammer in der zweiten zeile wird nicht geschlossen.
ich ich krieg die folgende fehlermeldung:
“Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\thumbtest.php on line 13″
da stimmt wohl irgendwas mit den hochkommas und anführungsstrichen nich. habs hierdurch ersetzt:
return ”;
dann gibts keine fehlermeldung mehr. das gleiche in zeile 2 des funktionsaufrufes:
hierdurch ersetzt:
$bild = thumbnail(”bild1.jpg”, “100″, “100″);
naja. nur funktionieren tuts bei mir nicht!