Will man vorhandene Bilder verkleinern oder vergrößern, kann man dies per Hand in einem Bildbearbeitungsprogramm erledigen oder es einem PHP-Script überlassen.
Hier eine Methode die das Bild anhand der Breitenangabe verkleinert oder vergrößert.
public function resizeImage($newWidth, $src){ list($imgWidth, $imgHeight, $imgTypeNr, $imgAttr) = getimagesize($src); if(!empty($imgTypeNr)) { $pathInfo = pathinfo($src); $imgName = $pathInfo['filename']; $path = $pathInfo['dirname'] . '/'; $extension = $pathInfo['extension']; $ratio = $imgWidth / $newWidth; $newHeight = round($imgHeight / $ratio); $newImgName = $imgName . '_' . $newWidth . 'x' . $newHeight.'.'.$extension; if(!file_exists($path . $newImgName)) { $imgResize = imagecreatetruecolor($newWidth, $newHeight); switch ($extension) { case 'bmp': $imgOld = imagecreatefromwbmp($src); break; case 'gif': $imgOld = imagecreatefromgif($src); break; case 'jpg': $imgOld = imagecreatefromjpeg($src); break; case 'png': echo 'ok'; $imgOld = imagecreatefrompng($src); imagealphablending($imgResize, false); $colorTransparent = imagecolorallocatealpha($imgResize, 0, 0, 0, 127); imagefill($imgResize, 0, 0, $colorTransparent); imagesavealpha($imgResize, true); break; } imagecopyresampled($imgResize, $imgOld, 0, 0, 0, 0, $newWidth, $newHeight, $imgWidth, $imgHeight); $saveImg = false; switch ($extension) { case 'bmp': $saveImg = imagewbmp($imgResize, $path . $newImgName); break; case 'gif': $saveImg = imagegif($imgResize, $path . $newImgName); break; case 'jpg': $saveImg = imagejpeg($imgResize, $path . $newImgName); break; case 'png': echo 'ok2'; $saveImg = imagepng($imgResize, $path . $newImgName); break; } if ($saveImg !== false) { return $path . $newImgName; } }else{ return $path . $newImgName; } } }