簡體   English   中英

PHP:如何壓縮圖像而不會失去可見的質量(自動)?

[英]PHP: How to compress images without losing visible quality (automatically)?

我想知道如何自動找出最佳壓縮率(小文件大小+無質量損失)。

目前我正在使用每個.jpg $quality = 85 imagejpeg()

PageSpeed(Chrome插件)建議,降低一些圖像的質量以節省一些kb。 減少的百分比是不同的。

我想編寫一個抓取特定目錄並優化每個圖像的cronjob。

PageSpeed或TinyPNG如何找出最佳的優化質量,這是否可以通過PHP或其他服務器語言實現?

TinyPNG使用pngquant

Pngquant可以選擇設置所需的質量,類似於JPEG。 你可以運行類似的東西:

<?php system('pngquant --quality=85 image.png'); ?>

Pngquant網站提供了示例代碼,展示了如何使用PHP中的pngquant


對於JPEG,您可以應用無損 jpegcrush

JpegMini (商業)和jpeg-archive (免費)是有損的 ,可以自動找到JPEG的最低質量。

在PHP中,您可以通過觀察重新壓縮后文件大小的變化來粗略估計壓縮的JPEG數量。 以相同或更高質量重新壓縮的JPEG文件大小不會有太大變化(但會失去視覺質量)。

如果重新壓縮JPEG並查看文件大小減半,則保留重新壓縮的版本。 如果您看到文件大小僅下降10-20%,則保留原始文件。

如果您正在壓縮自己,請使用MozJPEG (這是在線版本 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM