hallo,
ich habe mir ein script erstellt welche alle bilder aus einem ordner ausliest, die größe ermittelt dann verkleinert und in einem anderen ordner mit der neuen größe abspeichert.
Das problem dabei ist das die bilder sehr schlechte qualität haben.
mein script sieht so aus:
PHP-Code:
<?
$files = glob("schullandheim/*.jpg");
if(is_array($files)) {
foreach($files as $file) {
$files = explode("/", $file);
$datei = $files[1];
$dateipfad = $file;
$imgfile = $dateipfad;
$info = getimagesize($dateipfad);
$width = $info[0];
$height = $info[1];
$width_quer_neu = 800;
$width_hoch_neu = 600;
$height_quer_neu = 600;
$height_hoch_neu = 800;
if($width > $height) { $format = "quer";}
elseif($width < $height) { $format = "hoch";}
if($format == "quer"){
$quality = 100;
$ordner = "schullandheim2/$datei";
list($w,$h) = getimagesize($dateipfad);
$img = imagecreatefromjpeg($dateipfad);
$resized_img = imagecreate($width_quer_neu,$height_quer_neu);
imagecopyresized($resized_img,$img,0,0,0,0,$width_quer_neu,$height_quer_neu,$w,$h);
imagejpeg($resized_img,$ordner,$quality);
}
elseif($format == "hoch"){
$ordner = "schullandheim2/$datei";
list($w,$h) = getimagesize($dateipfad);
$img = imagecreatefromjpeg($dateipfad);
$resized_img = imagecreate($width_hoch_neu,$height_hoch_neu);
imagecopyresized($resized_img,$img,0,0,0,0,$width_hoch_neu,$height_hoch_neu,$w,$h);
imagejpeg($resized_img,$ordner,$quality);
}
}}
?>
obwohl ich für $quality 100 habe will er mir keine vernünftigen bilder geben...
wo liegt der fehler?