2009-06-22 13 views
5

Ich frage mich, wie man ein PNG-Bild korrekt komprimiert.PNG-Komprimierung mit PHP magickwand

Die Situation ist folgende:

Ich habe ein PNG-Bild komprimiert und farbreduzierten mit Irfanview unter Windows. Es ist ungefähr 20KB. Wenn meine Portal-Software die Größe (mit magickwand 1.0.7) mit Standardwerten ändert, sind es ca. 63K (!).

Nächster Versuch war, MagickSetImageDepth ($ this -> _ imageHandler, 8) zu nennen, was zu einer Dateigröße von 34K führt, was besser ist, aber immer noch größer als die (größere Dimension) Originaldatei.

Keine der dokumentierten Funktionen scheint zu passen, das Bild weiter zu komprimieren.

Jeder Hinweis würde sehr geschätzt werden!

Greetz, Sosa

Antwort

1

PNG-Komprimierung Programme und Routinen verwenden unterschiedliche Techniken. Ich habe herausgefunden, dass ein Bild, das bereits komprimiert (oder effizient gespeichert) wurde, oft nicht weiter komprimiert werden kann oder sogar eine höhere Dateigröße hat, wie Sie es gerade erleben.

In Ihrem Fall würde ich sagen, dass Ihre Bilder nicht weiter komprimiert werden können, zumindest nicht mit MagickWand. Vielleicht möchten Sie diesen Schritt einfach weglassen.

Vielleicht wäre eine Optimierung Ihrer PNGs vor der Laufzeit eine Lösung. In diesem Fall stehen viele Optionen zur Verfügung. Ich hatte Glück mit PNGGauntlet. Sie können einen Batch-Job auf PNGGauntlet ausführen, und die Dateien, die größer gemacht wurden, werden ggf. übersprungen.