PHP: Resize image
Jeg har lavet denne funktion, som jeg bruger til at resize billeder som bliver uploadet:function reziseImage($src, $dist, $imageType, $maxWidth, $maxHeight) {
list($width, $height) = getimagesize($src);
if ($width>$maxWidth || $height>$maxHeight) {
$scrRatio = $width/$height;
$distRatio = $maxWidth/$maxHeight;
if ($distRatio>$scrRatio) {
$newHeight = $maxHeight;
$newWidth = $maxHeight*$scrRatio;
} else {
$newHeight = $maxWidth/$scrRatio;
$newWidth = $maxWidth;
}
} else {
$newWidth=$width;
$newHeight=$height;
}
$thumb = imagecreatetruecolor($newWidth, $newHeight);
if ($imageType == "jpg") {
$source = imagecreatefromjpeg($src);
} elseif ($imageType == "png") {
$source = imagecreatefrompng($src);
} elseif ($imageType == "gif") {
$source = imagecreatefromgif($src);
}
$source = imagecreatefromjpeg($src);
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
if ($imageType == "jpg") {
imagejpeg($thumb, "$dist");
} elseif ($imageType == "png") {
imagepng($thumb, "$dist");
} elseif ($imageType == "gif") {
imagegif($thumb, "$dist");
}
}
Jeg uploader nu et billede med følgende dimensioner:
488x332
Funktionen bliver nu kørt med følgende attributter, for at lave et thumbnail:
reziseImage($imageFilename, $imageFilenameThumb, $imageType, 150, 100);
Det givet et thumbnail med følgende dimensioner:
146x100
Problemet er bare, at det thumbnail ser forvrænget ud :(
Nogen der kan hjælpe mig med at løse det problem?
(har desværre ikke flere point)
