我正在制作一个图片库网站,用户可以上传任何图片,并将其显示在前端。我需要在不影响质量的情况下压缩图像以减小尺寸,以便页面加载速度不会产生太大影响。我用下面的代码上传图片:如何在Laravel上传之前压缩图像?
$rules = array('file' => 'required');
$destinationPath = 'assets/images/pages'
$validator = Validator::make(array('file' => $file), $rules);
if ($validator->passes()) {
$filename = time() . $uploadcount . '.' . $file->getClientOriginalExtension();
$file->move($destinationPath, $filename);
return $filename;
} else {
return '';
}
我想大多数网络服务器和化网页浏览器的内容开箱即用支持gzip压缩,所以你应该不是真的需要为无损压缩做任何事情。当然这只影响服务器>客户端方向。 – apokryfos
@apokryfos我已经启用gzipping使用htaccess和页面的洞察力也告诉我,压缩启用,但它仍然给我错误,以减少图像大小和我的网页速度只是在20-28之间。 –
您可以使用图像干预调整图像大小,并同时存储 - 调整大小和原始版本。重新调整后的版本应该具有稍后将显示它们的尺寸 - 因此,您不会看到质量损失。如果你仍然需要原件,你也可以使用这种方法 –