开发者

JPG File Size Optimization - PHP, ImageMagick, & Google's Page Speed

I have photo gallery code that does image re-sizing and thumbnail creation. I use ImageMagick to do this. I ran a gallery page through Google's Page Speed tool and it revealed that the re-sized开发者_运维技巧 images and thumbnails both have about an extra 10KB of data (JPEG files specifically).

What can I add to my scripts to optimize the file size?


ADDITIONAL INFORMATION

I am using the imagick::FILTER_LANCZOS filter with a blur setting of 0.9 when calling the resizeImage() function. JPEGs have a quality setting of 80.


I found this SO question, "Tools for JPEG optimization?", that has some good information, but the solutions are outside of PHP. Using hints from that question's solutions I found that there were two lossless optimizations that could be performed:

  1. Optimization of the Huffman coding tables
  2. Removal of meta-data (EXIF, etc)

Both of can be accomplished with ImageMagick this way:

  1. According to ImageMagick documentation, the optimal Huffman coding tables are computed by default. This step is already taken care of, yay!
  2. Removal of meta-data can be accomplished very simply by using the stripImage() method.

One image I tested was reduced by 12KB. The 600x450 file went from 63.42KB to 51.42KB, and the 140x105 thumbnail went from 17.98KB to 5.98KB.


Run your images through Yahoo's SmushIt service, where the images are converted to a PNG with an exact number of colors. No loss in quality, but a loss in weight :)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜