Question

Je photo le code de la galerie qui fait l'image re-dimensionnement et à la création miniature. J'utilise ImageMagick pour ce faire. J'ai couru une page de la galerie à travers l'outil de vitesse Page de Google et il a révélé que les images redimensionnées et les vignettes ont toutes deux environ une 10KB supplémentaire de données (fichiers JPEG spécifiquement).

Que puis-je ajouter à mes scripts pour optimiser la taille du fichier?


INFORMATIONS COMPLÉMENTAIRES

J'utilise le filtre imagick::FILTER_LANCZOS avec un paramètre de flou de 0.9 lorsque vous appelez la fonction resizeImage(). Ont un JPEGs paramètre de qualité de 80.

Était-ce utile?

La solution

Je trouve cette question SO, "Outils pour l'optimisation JPEG? ", qui a un certain Une bonne information, mais les solutions sont en dehors de PHP. En utilisant des notes à partir des solutions de cette question, je trouvais qu'il y avait deux optimisations sans perte qui pourraient être effectuées:

  1. Optimisation des tables de codage de Huffman
  2. Suppression des méta-données (EXIF, etc.)

Les deux peut être accompli avec ImageMagick cette façon:

  1. Selon documentation ImageMagick , les tables de codage de Huffman optimales sont calculées par défaut. Cette étape est déjà pris en charge, youpi!
  2. Suppression des méta-données peut se faire très simplement en utilisant le stripImage () .

Une image je l'ai testé a été réduit de 12 Ko. Le fichier 600x450 est passé de 63.42KB à 51.42KB, et la vignette 140x105 est passé de 17.98KB à 5.98KB.

Autres conseils

Exécuter vos images par le service SmushIt de Yahoo, où les images sont converties en format PNG avec un nombre exact de couleurs. Pas de perte de qualité, mais une perte de poids:)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top