Hallo Leute,
bin verzweifelt.
Habe folgenden Code geschrieben.
////////////////////////////////////
<?
$PicPathIn="";
$PicPathOut="thumbs/";
// Orginalbild
$bild="2.jpg";
// Bilddaten ermitteln
$size=getimagesize("$PicPathIn"."$bild");
$breite=$size[0];
$hoehe=$size[1];
$neueBreite=400;
$neueHoehe=intval($hoehe*$neueBreite/$breite);
if($size[2]==1) {
// GIF
$altesBild=ImageCreateFromGIF("$PicPathIn"."$bild" );
$neuesBild=imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$ne ueBreite,$neueHoehe,$breite,$hoehe);
imageGIF($neuesBild,"$PicPathOut"."TN"."$bild");
}
if($size[2]==2) {
// JPG
$altesBild=ImageCreateFromJPEG("$PicPathIn"."$bild ");
$neuesBild=imageCreatetruecolor($neueBreite,$neueH oehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$ne ueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild,"$PicPathOut"."TN"."$bild");
}
if($size[2]==3) {
// PNG
$altesBild=ImageCreateFromPNG("$PicPathIn"."$bild" );
$neuesBild=imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$ne ueBreite,$neueHoehe,$breite,$hoehe);
ImagePNG($neuesBild,"$PicPathOut"."TN"."$bild");
}
echo "Altes Bild:
";
echo "<IMG SRC=\"$PicPathIn$bild\" WIDTH=\"$breite\" HEIGHT=\"$hoehe\">
";
echo "Neues Bild:
";
$Thumbnail=$PicPathOut."TN".$bild;
echo "<IMG SRC=\"$Thumbnail\" WIDTH=\"$neueBreite\" HEIGHT=\"$neueHoehe\">";
?>
///////////////////////////////////
Aber wenn ich ein ca. 1,5MB Bild für 2.jpg verwende dann macht er als Thumb nur ein schwarzes Bild!?!?! Was kann ich da machen will einfach nur große Dateien kleiner machen. Ausserdem übernimmt er die Farben nicht so wie ich will, die Qualität ist ziemlich schlecht. Kann man da was ändern?
Hoffe ihr könnt mir helfen. Danke schon mal
MfG
Mister X
bin verzweifelt.
Habe folgenden Code geschrieben.
////////////////////////////////////
<?
$PicPathIn="";
$PicPathOut="thumbs/";
// Orginalbild
$bild="2.jpg";
// Bilddaten ermitteln
$size=getimagesize("$PicPathIn"."$bild");
$breite=$size[0];
$hoehe=$size[1];
$neueBreite=400;
$neueHoehe=intval($hoehe*$neueBreite/$breite);
if($size[2]==1) {
// GIF
$altesBild=ImageCreateFromGIF("$PicPathIn"."$bild" );
$neuesBild=imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$ne ueBreite,$neueHoehe,$breite,$hoehe);
imageGIF($neuesBild,"$PicPathOut"."TN"."$bild");
}
if($size[2]==2) {
// JPG
$altesBild=ImageCreateFromJPEG("$PicPathIn"."$bild ");
$neuesBild=imageCreatetruecolor($neueBreite,$neueH oehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$ne ueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild,"$PicPathOut"."TN"."$bild");
}
if($size[2]==3) {
// PNG
$altesBild=ImageCreateFromPNG("$PicPathIn"."$bild" );
$neuesBild=imageCreate($neueBreite,$neueHoehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$ne ueBreite,$neueHoehe,$breite,$hoehe);
ImagePNG($neuesBild,"$PicPathOut"."TN"."$bild");
}
echo "Altes Bild:
";
echo "<IMG SRC=\"$PicPathIn$bild\" WIDTH=\"$breite\" HEIGHT=\"$hoehe\">
";
echo "Neues Bild:
";
$Thumbnail=$PicPathOut."TN".$bild;
echo "<IMG SRC=\"$Thumbnail\" WIDTH=\"$neueBreite\" HEIGHT=\"$neueHoehe\">";
?>
///////////////////////////////////
Aber wenn ich ein ca. 1,5MB Bild für 2.jpg verwende dann macht er als Thumb nur ein schwarzes Bild!?!?! Was kann ich da machen will einfach nur große Dateien kleiner machen. Ausserdem übernimmt er die Farben nicht so wie ich will, die Qualität ist ziemlich schlecht. Kann man da was ändern?
Hoffe ihr könnt mir helfen. Danke schon mal
MfG
Mister X
Kommentar