I don't know why in my code does my image gets fliped to the left for 90 deg. but only when image is portrait mode height/width > 1
$fname is the name of the file stored on disk,
$ofname is original name used to get its extension
function reduce($fname, $ofname) {
$originalImagePath = "slike/" . $fname;
$resizedImagePath = "slike3/" . $fname;
$allowedExtensions = ["jpg", "jpeg", "png"];
$fileExtension = strtolower(pathinfo($ofname, PATHINFO_EXTENSION));
if (in_array($fileExtension, $allowedExtensions)) {
switch ($fileExtension) {
case "jpg":
case "jpeg":
$originalImage = imagecreatefromjpeg($originalImagePath);
break;
case "png":
$originalImage = imagecreatefrompng($originalImagePath);
break;
default:
echo "Unsupported image format.";
exit();
}
$percent = 0.2;
list($width, $height) = getimagesize($originalImagePath);
$newWidth = $width * $percent;
$newHeight = $height * $percent;
$resizedImage = imagecreatetruecolor($newWidth, $newHeight);
imagecopyresized($resizedImage, $originalImage, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
imagejpeg($resizedImage, $resizedImagePath);
imagedestroy($originalImage);
imagedestroy($resizedImage);
echo 'Resized image saved successfully.';
}
}
I want to make a smaller resolution image and keep my aspect ratio