我目前已经实现了一段代码,允许我调整图像大小以允许在我正在创建的画廊中使用缩略图,尽管它不太顺利。
我正在使用一些预先编写的代码来调整图像的大小,尽管我正在努力为图像提供至少 195px 的高度和 195px 的宽度+如果可能的话保持成比例。
还有什么方法可以优化图像以改善页面加载时间吗?
这是我当前的代码,任何帮助将不胜感激,谢谢!
function imageResize() {
$filename = $row['main'];
if (exif_imagetype($filename) == IMAGETYPE_GIF) {
$create = imagecreatefromgif;
}
if (exif_imagetype($filename) == IMAGETYPE_JPEG) {
$create = imagecreatefromjpeg;
}
if (exif_imagetype($filename) == IMAGETYPE_PNG) {
$create = imagecreatefrompng;
}
$width = 600; //These values have been tinkered with from their original values
$height = 500;
header('Content-Type: image/jpeg');
list($width_orig, $height_orig) = getimagesize($filename);
$ratio_orig = $width_orig/$height_orig;
if ($height_orig < 300) {
$width = $height*$ratio_orig;
} else {
$height = $width/$ratio_orig;
}
$image_p = imagecreatetruecolor($width, $height);
$image = $create($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
imagejpeg($image_p, null, 100);
}