我在调整图像大小时遇到问题。
发生的情况是,如果您上传的文件大于规定的参数,图像会被裁剪,然后以 100% 的质量保存。
因此,如果我上传一个 272Kb 的大 jpeg。图像被裁剪了 100 个奇数像素。然后文件大小上升到 1.2Mb。
我们正在以 100% 的质量保存图像。我认为这是导致问题的原因。图像以 30% 的质量从 Photoshop 导出,从而减小了文件大小。以 100% 质量重新保存图像会创建相同的图像,但我假设有很多冗余文件数据。
有没有人遇到过这个?有没有人有办法解决吗?
这就是我们正在使用的。
$source_im = imagecreatefromjpeg ($file);
$dest_im = imagecreatetruecolor ($newsize_x, $newsize_y);
imagecopyresampled (
$dest_im, $source_im,
0, 0,
$offset_x, $offset_y,
$newsize_x, $newsize_y,
$sourceWidth, $sourceHeight
);
imagedestroy ($source_im);
if ($greyscale) {
$dest_im = $this->imageconvertgreyscale ($dest_im);
}
imagejpeg($dest_im, $save_to_file, $quality);
break;