Optimierung der JPG-Dateigröße - PHP, ImageMagick und die Seitengeschwindigkeit von Google

8

Ich habe einen Foto-Galerie-Code, der die Bildgrößenanpassung und die Miniaturbild-Erstellung ermöglicht. Ich benutze ImageMagick, um dies zu tun. Ich führte eine Galerieseite durch das Google Page Speed-Tool, und es zeigte sich, dass die vergrößerten Bilder und Thumbnails jeweils über zusätzliche 10 KB Daten verfügen (speziell JPEG-Dateien).

Was kann ich meinen Skripten hinzufügen, um die Dateigröße zu optimieren?

ZUSÄTZLICHE INFORMATIONEN

Ich verwende den imagick::FILTER_LANCZOS Filter mit einer Unschärfeeinstellung von 0.9 , wenn ich die Funktion resizeImage() aufruft. JPEGs haben eine Qualitätseinstellung von 80 .

    
Sonny 29.03.2010, 17:49
quelle

2 Antworten

10

Ich habe diese Frage SO gefunden, Tools für JPEG-Optimierung? ", das hat einige gute Informationen, aber die Lösungen sind außerhalb von PHP. Anhand von Hinweisen aus den Lösungen dieser Frage konnte ich feststellen, dass zwei verlustfreie Optimierungen möglich waren:

  1. Optimierung der Huffman-Codiertabellen
  2. Entfernung von Metadaten (EXIF, etc)

Beides kann mit ImageMagick auf diese Weise erreicht werden:

  1. Laut ImageMagick-Dokumentation werden die optimalen Huffman-Codiertabellen standardmäßig berechnet. Dieser Schritt ist bereits erledigt, yay!
  2. Die Entfernung von Meta-Daten kann sehr einfach mit dem stripImage () Methode.

Ein Bild, das ich getestet habe, wurde um 12 KB reduziert. Die 600x450-Datei ging von 63,42 KB auf 51,42 KB und die Miniaturansicht von 140 x 105 von 17,98 KB auf 5,98 KB.

    
Sonny 30.03.2010, 18:24
quelle
3

Lassen Sie Ihre Bilder durch den Yahoo-Dienst SmushIt laufen, wo die Bilder in eine PNG mit einer genauen Anzahl von Farben konvertiert werden. Kein Qualitätsverlust, aber ein Gewichtsverlust:)

    
Adrian A. 30.03.2010 20:40
quelle

Tags und Links