Pourquoi ?
- Moins il y a de couleurs dans une image, mieux elle se compresse en PNG. Bien souvent, les PNG en millions de couleurs peuvent se réduire à 256 sans grande perte de qualité .
- On peut utiliser différents taux de compression quand on enregistre en PNG. On peut donc re-compresser les PNG avec des paramètres optimaux pour obtenir un fichier plus petit sans la moindre modification visuelle .
- Un fichier PNG peut contenir de nombreuses informations en plus de l’image elle-même: des commentaires, des profils de couleur, etc. Ces informations sont inutile pour un navigateur. Les éliminer permet d’obtenir des fichiers PNG plus petits .
Avec quoi ?
Il existe deux logiciels très efficaces, gratuits et open-source:
- pngnq permet de réduire le nombre de couleur d’un fichier PNG. La grande majorité des PNG en millions de couleurs peuvent se réduire en 256 couleurs sans perte de qualité flagrande. On gagne ainsi de la place. pngnq est le logiciel le meilleur dans ce domaine.
- optipng effectue une recompression des png en essayant différents paramètres de compression afin d’obtenir le fichier le plus petit possible.
- optipng élimine également les informations inutiles d’un PNG.
L’étape pngnq est recommandée mais optionnelle, car dans certains cas spécifiques, elle peut réduire trop la qualité d’image. Mais dans la vaste majorité des cas, l’algorithme utilisé est tellement efficace que la différence entre millions de couleurs et 256 couleurs est presque imperceptible.
En fait, pngnq est tellement efficace que rares sont les cas où garder du 16 millions de couleurs se justifie.
Comment ? :
- Il faut installer PNGNQ et OPTIPNG avec la commande :
sudo apt-get install pngnq optipng
- Si vous avez un fichier image.png, tapez en ligne de commande:
pngnq -vf -s1 image.png
optipng -o7 image-nq8.png
En sortie, vous avez l’image optimisée image-nq8.png
Faites le test ! Vous serez surpris du gain de place.
Explications des options:
- -vf demande à pngnq d’afficher ce qu’il est en train de faire, et d’écraser le fichier s’il existe déjà.
- -s1 demande à pngnq de faire l’optimisation maximum (par défaut, c’est -s3)
- -o7 demande à optipng de faire un maximum de tests avec des combinaisons différentes.
- Si vous avez un lot de fichiers png, vous pouvez faire:
pngnq -vf -s1 *.png
optipng -o7 *-nq8.png
Les fichiers optimisés porteront le nom xxxx-nq8.png