首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何仅使用PHP压缩尚未压缩的图像?

如何仅使用PHP压缩尚未压缩的图像?
EN

Stack Overflow用户
提问于 2016-04-14 13:30:21
回答 4查看 50关注 0票数 0

我目前正在努力加快我们开发的网站。我现在工作的部分是优化图像,使它们尽可能小(文件大小,而不是尺寸),而不会失去质量。

我们的客户可以上传他们自己的图像到网站通过我们的定制CMS,但图像没有被压缩或优化在任何地方。我的上司解释说,这是因为客户可以上传他们自己的图片,这些图像可以事先通过Photoshop或类似的工具进行优化。如果你优化了已经优化过的图像,质量会变得更糟。...right?

我们试图找到一种不需要安装模块或任何东西的解决方案。我们已经使用了imagejpeg()imagepng()imagegif(),但是由于前面解释的原因,我们不使用$quality参数。我见过一些片段,但它们都使用imagejpg()等。

话虽如此,是否有一种毫无疑问的优化图像的方法,而不存在优化以前优化过的图像的风险?或者使用imagejpeg()imagepng()imagegif()根本不成问题,即使这意味着优化已经优化过的图像?

谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-04-14 13:43:16

从你的标题开始,我将假设压缩

因此,假设一个普通的jpg 800x600是由您的客户上传的。客户的jpg是272 is,因为它有完整的细节和一切。

您需要在可接受的维度上设置文件大小的调整。

比如:

代码语言:javascript
复制
if $dimensions->equals(800,600) and file_type($image) =='jpg' and file_size($image) > 68kb 
then schedule_for_compression($image)

通过这种方式,您可以为可接受的文件大小上限设置参数。如果尺寸匹配,而且文件大小更大,那么就没有优化。

但是,在不知道更多细节的情况下,我唯一能想到的就是对优化的具体理解。

票数 1
EN

Stack Overflow用户

发布于 2016-04-14 13:46:24

“如果你优化了已经优化过的图像,质量就会变得更糟。”如果你用的是没有松动的方法。

我不知道在php中直接使用什么方法,但是如果您在linux服务器上,您可以使用jpegtran或jpegoptim (带有-strip)来处理jpeg和OptiPNG或png。

票数 2
EN

Stack Overflow用户

发布于 2016-04-14 14:22:10

如果您正在使用较低数量的图像进行压缩,您可能会发现一个外部服务,例如:https://tinypng.com/developers可能会有所帮助。

我使用了他们的在线工具来手动减少JPG和PNG文件的文件大小,但是他们通过appaear为每个月的前500张图像提供免费的API服务。

很抱歉,如果作为评论比回答更好的话,我对堆栈溢出非常陌生,而且还没有得到足够的分数,但我觉得这可能是一个方便的替代解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36624676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档