8

画像のサイズ変更とサムネイルの作成を行うフォト ギャラリー コードがあります。これには ImageMagick を使用します。Google の Page Speed ツールでギャラリー ページを実行したところ、サイズ変更された画像とサムネイルの両方に、約 10 KB の余分なデータ (具体的には JPEG ファイル) があることがわかりました。

ファイル サイズを最適化するには、スクリプトに何を追加できますか?


追加情報

関数呼び出し時imagick::FILTER_LANCZOSのぼかし設定でフィルターを使用しています。JPEG の品質設定は.0.9resizeImage()80

4

2 に答える 2

10

私はこのSOの質問「JPEG最適化のためのツール?」を見つけました。これにはいくつかの良い情報がありますが、解決策はPHPの外にあります。その質問の解決策からのヒントを使用して、実行できる2つのロスレス最適化があることがわかりました。

  1. ハフマン符号化テーブルの最適化
  2. メタデータの削除(EXIFなど)

どちらも次の方法で実行できますImageMagick

  1. ImageMagickのドキュメントによると、最適なハフマンコーディングテーブルはデフォルトで計算されます。このステップはすでに処理されています、イェーイ!
  2. メタデータの削除は、 stripImage()メソッドを使用することで非常に簡単に実行できます。

私がテストした1つの画像は12KB削減されました。600x450ファイルは63.42KBから51.42KBになり、140x105サムネイルは17.98KBから5.98KBになりました。

于 2010-03-30T18:24:48.123 に答える
3

Yahoo の SmushIt サービスを介して画像を実行すると、画像は正確な色数の PNG に変換されます。品質の損失はありませんが、重量の損失:)

于 2010-03-30T20:40:38.057 に答える