<?php
function resizeImage($originalImage, $toWidth, $toHeight, $extension){
// Get the original geometry and calculate scales
list($width, $height) = getimagesize($originalImage);
$xscale = $width / $toWidth;
$yscale = $height/ $toHeight;
// Recalculate new size with default ratio
if ($yscale>$xscale){
$new_width = round($width * (1/$yscale));
$new_height = round($height * (1/$yscale));
}
else {
$new_width = round($width * (1/$xscale));
$new_height = round($height * (1/$xscale));
}
// Resize the original image
$imageResized = imagecreatetruecolor($new_width, $new_height);
if ($extension == 'jpeg') {
$imageTmp = imagecreatefromjpeg($originalImage);
} else if ($extension == 'png') {
$imageTmp = imagecreatefrompng($originalImage);
} else if ($extension == 'gif') {
$imageTmp = imagecreatefromgif($originalImage);
}
imagecopyresampled(
$imageResized, $imageTmp, 0, 0, 0, 0,
$new_width, $new_height, $width, $height);
return $imageResized;
}
function saveImage($resizedImage, $thisCellFileName, $extension) {
if ($extension == 'jpeg') {
return imagejpeg($resizedImage, $thisCellFileName);
} else if ($extension == 'png') {
return imagepng($resizedImage, $thisCellFileName);
} else if ($extension == 'gif') {
return imagegif($resizedImage, $thisCellFileName);
}
}