(reprise du message précédent)
J'ai lu l'article sur l'introduction au format d'images sur le web. J'ajouterai simplement que les notions PNG24 ou PNG8 restent trop superflues pour un article qui se voudrait un peu plus exhaustif.
Ces PNG8 sont trop souvent recensés sur le web comme la plus haute teneur en compression, alors que ... ce n'est pas le cas. Cela dépend de l'image elle même. Pour ceux qui souhaitent approfondir un peu plus, sans rentrer dans le détail :
PNG24 : Le 24 signifie qu'un pixel de l'image est encodée sous 24 bits de données, et que la palette de couleurs est définie à plus 16 millions de variantes. C'est une méthode d'enregistrement dite "truecolor", car avec un telle palette, l'on peut afficher tout type d'image (photos, capture d'écran etc.)
PNG8 : Le 8, c'est également 8 bits par pixel, et la palette de couleurs est cette fois limitée à 256 couleurs. C'est la méthode d'enregistrement dite "paletted". Bien évidemment, moins il y'a de bits nécessaire à l'encodage, plus le poids de l'image se réduit...
Mais prenons maintenant un exemple d'une image qui n'a pas besoin de 256 variantes; il est également possible de réduire encore cette palette de couleurs, et par la même occasion de réduire considérablement le poids de l'image, sans en altérer sa qualité.
Optimiser correctement une image PNG c'est donc, dans un premier temps, réduire la palette selon le nombre de couleurs dont elle a besoin pour être restituée. Si ces deux valeurs coïncident, l'on obtient une optimisation qualité/poids (sans rentrer dans le détail des méthodes d'encodage différentes, qui peuvent "grappiller" quand même quelques milliers d'octets.).
Cette méthode d'optimisation est néanmoins difficile et longue à mettre en oeuvre.
On peut également accepter certains points de dégradation de l'image, et réduire son poids, sans pour autant la rendre complètement illisible. En clair, les possibilités de compression du PNG sont largement sous-exploitées, car hélas méconnues sur le web.
Pour reprendre un exemple cité dans un test de l'article donné par Laurent Denis :
1. Image originale de 256 couleurs - 20 646 octets
2. Méthode d'encodage différente, mais qualité identique 256 couleurs - 17 844 octets
3. Image volontairement "dégradée" de 96 couleurs - 14 146 octets
etc.
Pour les intéressés, le navigateur Opera à la possibilité d'identifier l'encodage d'une image simplement et de le restituer à l'utilisateur, en affichant simplement la propriétés de l'image (Profondeur x bits/pixels).
Certaines images, disposant de peu de couleurs (4 par exemple) peuvent être encodées sous 2 bits (PNG2), et atteindre des proportions minimalistes très intéressantes pour tout le monde (trafic limité par l'hébergeur pour les webmestres, chargement accru pour les visiteurs).
J'ai lu l'article sur l'introduction au format d'images sur le web. J'ajouterai simplement que les notions PNG24 ou PNG8 restent trop superflues pour un article qui se voudrait un peu plus exhaustif.
Ces PNG8 sont trop souvent recensés sur le web comme la plus haute teneur en compression, alors que ... ce n'est pas le cas. Cela dépend de l'image elle même. Pour ceux qui souhaitent approfondir un peu plus, sans rentrer dans le détail :
PNG24 : Le 24 signifie qu'un pixel de l'image est encodée sous 24 bits de données, et que la palette de couleurs est définie à plus 16 millions de variantes. C'est une méthode d'enregistrement dite "truecolor", car avec un telle palette, l'on peut afficher tout type d'image (photos, capture d'écran etc.)
PNG8 : Le 8, c'est également 8 bits par pixel, et la palette de couleurs est cette fois limitée à 256 couleurs. C'est la méthode d'enregistrement dite "paletted". Bien évidemment, moins il y'a de bits nécessaire à l'encodage, plus le poids de l'image se réduit...
Mais prenons maintenant un exemple d'une image qui n'a pas besoin de 256 variantes; il est également possible de réduire encore cette palette de couleurs, et par la même occasion de réduire considérablement le poids de l'image, sans en altérer sa qualité.
Optimiser correctement une image PNG c'est donc, dans un premier temps, réduire la palette selon le nombre de couleurs dont elle a besoin pour être restituée. Si ces deux valeurs coïncident, l'on obtient une optimisation qualité/poids (sans rentrer dans le détail des méthodes d'encodage différentes, qui peuvent "grappiller" quand même quelques milliers d'octets.).
Cette méthode d'optimisation est néanmoins difficile et longue à mettre en oeuvre.
On peut également accepter certains points de dégradation de l'image, et réduire son poids, sans pour autant la rendre complètement illisible. En clair, les possibilités de compression du PNG sont largement sous-exploitées, car hélas méconnues sur le web.
Pour reprendre un exemple cité dans un test de l'article donné par Laurent Denis :
1. Image originale de 256 couleurs - 20 646 octets
2. Méthode d'encodage différente, mais qualité identique 256 couleurs - 17 844 octets
3. Image volontairement "dégradée" de 96 couleurs - 14 146 octets
etc.
Pour les intéressés, le navigateur Opera à la possibilité d'identifier l'encodage d'une image simplement et de le restituer à l'utilisateur, en affichant simplement la propriétés de l'image (Profondeur x bits/pixels).
Certaines images, disposant de peu de couleurs (4 par exemple) peuvent être encodées sous 2 bits (PNG2), et atteindre des proportions minimalistes très intéressantes pour tout le monde (trafic limité par l'hébergeur pour les webmestres, chargement accru pour les visiteurs).