Ok das mit der GD hab ich hingekriegt...
hier mein Script:
<?
if(isset($_GET['bild']) AND file_exists($_GET['bild'])) {
// Orginalbild
$bild = $_GET['bild'];
// Bilddaten ermitteln
$size = getimagesize($bild);
$breite = $size[0];
$hoehe = $size[1];
// neue Größen berechnen
if(isset($_GET['breite'])) {
$neueBreite = $_GET['breite'];
$neueHoehe = intval($hoehe*$neueBreite/$breite);
} elseif(isset($_GET['hoehe'])) {
$neueHoehe = $_GET['hoehe'];
$neueBreite = intval($breite*$neueHoehe/$hoehe);
} else {
$neueBreite = 160;
$neueHoehe = intval($hoehe*$neueBreite/$breite);
}
if($size[2]==1) {
// GIF
header("Content-type: image/gif"
$altesBild = ImageCreateFromGIF($bild);
$neuesBild = imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
imageGIF($neuesBild);
}
if($size[2]==2) {
// JPG
header("Content-type: image/jpg"
$altesBild = ImageCreateFromJPEG($bild);
$neuesBild = imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
ImageJPEG($neuesBild);
}
if($size[2]==3) {
// PNG
header("Content-type: image/png"
$altesBild = ImageCreateFromPNG($bild);
$neuesBild = imageCreate($neueBreite, $neueHoehe);
imageCopyResized($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite, $neueHoehe, $breite, $hoehe);
ImagePNG($neuesBild);
}
} else {
echo "Zu änderndes Bild existiert nicht!";
}
?>
Nur seht euch das an, hier das Originalbild:
http.//tkd.joehanson.de/tkd/pics/alt/alt%20(1).jpg
Bild nach der Änderung:
http://localhost/tkd/pics/thumb.php?bild=alt/alt%20(1).jpg&breite=640
Seht ihr den unterschied? Warum ist das Bild nachher so Farblos?