Ok
Die Pfade und Bildnamen werden bei mir aus der Datenbank geholt.
$path = "/pfad/zum/ordner/";
while ($dat = @mysql_fetch_array($sql)) {
$bild = $path.$dat['dirdate']."/".$dat['filename'];
// Bilddaten feststellen
$size = getimagesize($bild);
$breite = $size[0];
$hoehe = $size[1];
//hier die Breite festlegen
$neueBreite = 150;
$neueHoehe = 150;
// Falls die Hoehe von der Breite abhängig sein soll
#$neueHoehe=intval($hoehe*$neueBreite/$breite);
// GIF
if($size[2] == 1) {
$altesBild = ImageCreateFromGIF($bild);
$neuesBild = ImageCreateTrueColor($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImageGIF($neuesBild,$path.$dat['dirdate']."/tn_".$dat['filename']);
}
// JPG
elseif($size[2] == 2) {
$altesBild = ImageCreateFromJPEG($bild);
$neuesBild = ImageCreateTrueColor($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild,$path.$dat['dirdate']."/tn_".$dat['filename']);
}
// PNG
elseif($size[2] == 3) {
$altesBild = ImageCreateFromPNG($bild);
$neuesBild = ImageCreateTrueColor($neueBreite,$neueHoehe);
ImageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImagePNG($neuesBild,$path.$dat['dirdate']."/tn_".$dat['filename']);
}
echo $bild." ...Done<br>";
}
[/PHP]