PDFMove
Conversion PNG vers JPG : où passe la transparence ?
Guide

Conversion PNG vers JPG : où passe la transparence ?

6 min de lecture

Ce qui disparaît n'est pas un réglage, c'est un canal

Convertir un PNG à fond transparent en JPG et se retrouver face à un rectangle blanc est le résultat qui surprend le plus souvent lors d'une conversion d'image en ligne. Les gens y voient généralement une erreur de réglage et se mettent à chercher la bonne option. Or ce qui disparaît ici n'est pas un réglage, mais une couche de données que le format n'a jamais possédée.

Dans cet article, nous expliquons ce qu'est le canal alpha, pourquoi il n'existe pas dans le JPG et ce qui arrive exactement aux pixels transparents au moment de la conversion.

Qu'est-ce que le canal alpha ?

Dans une image numérique, chaque pixel porte une information de couleur. Dans la représentation courante, cette information se compose de trois canaux : rouge, vert et bleu. Le PNG ajoute à ces trois-là un quatrième canal : l'alpha. Le canal alpha ne stocke pas une couleur, mais le degré d'opacité de ce pixel.

La valeur alpha peut prendre 256 niveaux différents. À une extrémité, le pixel est totalement invisible et le fond situé derrière lui apparaît tel quel. À l'autre extrémité, le pixel est totalement opaque et ne laisse rien voir derrière lui. Les valeurs intermédiaires expriment la semi-transparence, et ce sont en pratique les plus critiques : la transition douce sur le bord incurvé d'un logo, l'ombre sous un objet, le fond flouté d'un effet de verre fonctionnent tous avec des valeurs alpha intermédiaires.

La transparence du PNG ne se résume donc pas à une alternative « oui ou non ». C'est exactement sur ce point qu'elle se distingue de la transparence binaire du GIF, qui ne peut choisir qu'entre entièrement transparent et entièrement opaque.

Pourquoi le JPG n'a-t-il pas de canal alpha ?

Le JPG a été conçu pour stocker efficacement des photographies. Une photographie n'a pas d'arrière-plan : la totalité du cadre est remplie. Le besoin de transparence n'est donc jamais apparu dans la conception du format. La structure de fichier JPG ne définit aucun espace pour stocker un canal alpha.

Ce n'est ni une lacune logicielle ni une fonctionnalité désactivée après coup, mais une décision de conception propre au format. Aucun convertisseur, aucun réglage ne peut y changer quoi que ce soit. Une option « convertir en JPG en préservant la transparence » n'existe pas et ne peut pas exister.

Que se passe-t-il exactement au moment de la conversion ?

Le convertisseur ouvre le PNG et obtient un tableau de pixels à quatre canaux. Pour l'enregistrer en JPG, il doit ramener ce tableau à trois canaux. Simplement supprimer le canal alpha laisserait les pixels transparents dans des couleurs arbitraires ; l'opération effectuée est donc une fusion appelée « aplatissement ».

Pendant l'aplatissement, le logiciel choisit une couleur de remplissage et mélange chaque pixel avec cette couleur en fonction de sa valeur alpha. Un pixel totalement transparent devient la couleur de remplissage elle-même. Un pixel semi-transparent devient la moyenne pondérée de sa propre couleur et de la couleur de remplissage. Les pixels totalement opaques restent inchangés.

La couleur de remplissage n'est pas inscrite dans le format ; c'est un choix du logiciel. La grande majorité des éditeurs d'images et des outils en ligne utilisent le blanc. Certaines bibliothèques de traitement d'image, en revanche, représentent les zones transparentes par une valeur nulle et produisent donc un remplissage noir. Il est ainsi normal d'obtenir des couleurs d'arrière-plan différentes en faisant passer le même fichier par deux outils distincts.

Où cela fait-il le plus mal ?

Sur les logos à bords doux. Les bords incurvés d'un logo paraissent lisses grâce au lissage des contours, et ce lissage repose sur des pixels semi-transparents. Après un remplissage blanc, le logo peut encore paraître correct sur fond blanc, mais si vous le posez sur un fond sombre, un halo clair apparaît autour des contours.

Sur les graphiques avec ombre. Les ombres douces conçues pour paraître naturelles sont fusionnées avec la couleur de remplissage et ne peuvent plus s'adapter au fond situé dessous. L'ombre devient une tache fixe, indépendante du fond.

Sur les images produit détourées. L'arrière-plan supprimé pour l'e-commerce revient au moment même de la conversion en JPG, cette fois sous forme de rectangle blanc. Toute la souplesse de présenter le produit sur différents fonds disparaît.

Pourquoi est-ce irréversible ?

La perte ne se produit pas dans le format de fichier mais dans l'image elle-même. Après la conversion, la zone blanche n'est plus une région marquée comme « autrefois transparente » : c'est une partie réelle et ordinaire de l'image. Quand vous reconvertissez le fichier en PNG, cette zone blanche est stockée sans perte comme n'importe quel autre pixel.

Le seul moyen de retrouver la transparence est de détourer à nouveau l'arrière-plan. Sur un remplissage uni et d'une seule couleur, c'est relativement facile, mais comme les bords doux et les ombres ont été fusionnés, le résultat ne sera jamais aussi propre que l'original.

Quelle est la bonne approche ?

Ne supprimez jamais le PNG source ; produisez toujours un nouveau fichier lorsque vous convertissez un PNG en JPG. Si vous avez encore besoin de transparence, le format cible ne doit pas être le JPG : le WEBP prend en charge le canal alpha en mode avec perte comme en mode sans perte et donne généralement un fichier nettement plus léger que le PNG. Si le fond de l'image est en toutes circonstances une couleur connue et fixe, choisir délibérément cette couleur comme remplissage est également une solution légitime — dans ce cas vous ne subissez aucune perte, vous abandonnez seulement de la souplesse.

En résumé

Quand vous convertissez en JPG, la transparence ne va nulle part : elle ne peut tout simplement pas être stockée. Comme le canal alpha n'est pas défini dans la structure de fichier du JPG, les pixels transparents et semi-transparents sont fusionnés avec une couleur de remplissage et deviennent une partie permanente de l'image. Que ce soit blanc ou noir relève du choix de l'outil. La question à se poser avant de décider est la suivante : l'arrière-plan de cette image devra-t-il un jour se poser sur un fond différent ? Si la réponse est oui, le JPG n'est pas la bonne cible.

Questions fréquentes

Pourquoi l'arrière-plan est-il parfois blanc, parfois noir ?

Comme l'information de transparence ne peut pas être stockée dans un JPG, le convertisseur doit remplir les pixels transparents avec une couleur, et le choix de cette couleur relève du logiciel, pas du format. La plupart des outils en ligne et des éditeurs d'images utilisent le blanc, car la majorité des fonds de documents et du web sont blancs. Certaines bibliothèques, en revanche, représentent les pixels transparents par une valeur nulle, ce qui donne un résultat noir. Il n'est donc pas surprenant d'obtenir des résultats différents en convertissant le même fichier avec deux outils distincts.

Que deviennent les pixels semi-transparents lors de la conversion ?

Les pixels semi-transparents sont fusionnés avec la couleur de remplissage : une ombre grise transparente à cinquante pour cent devient un gris clair sur un remplissage blanc et ne transporte plus aucune information de transparence. C'est le problème le plus visible sur les logos avec ombre et les graphiques à bords doux, car les contours de l'image ne se fondent plus dans le fond mais apparaissent comme un halo blanc. Posez l'image sur un fond sombre et ce halo saute immédiatement aux yeux. Cet effet est présent à un degré ou un autre dans toute image comportant un lissage des contours.

Existe-t-il un moyen de préserver la transparence avant la conversion ?

Pas lors d'une conversion en JPG, car le format ne définit aucun canal alpha. Si vous voulez conserver la transparence tout en réduisant le fichier, la bonne cible est le WEBP : il prend en charge la transparence en mode avec perte comme en mode sans perte et il est généralement nettement plus léger que le PNG. Vous pouvez aussi rester en PNG et réduire les dimensions en pixels de l'image à la taille réellement nécessaire. Si le fond final de l'image est en toutes circonstances une couleur fixe et connue, utiliser sciemment cette couleur comme remplissage est également une solution acceptable.

Si je reconvertis le JPG en PNG, la transparence revient-elle ?

Non. Une conversion de format ne change que la façon dont les données sont empaquetées, elle ne recrée pas une information supprimée. Dans le JPG, chaque pixel est désormais opaque et la couleur de remplissage fait partie intégrante de l'image ; quand vous convertissez en PNG, cette zone blanche est elle aussi stockée sans perte. Pour retrouver la transparence, il faut détourer à nouveau l'arrière-plan, c'est-à-dire appliquer une opération distincte de suppression d'arrière-plan.

Essayez dès maintenant avec PNG → JPG Dönüştür.

Essayer PNG → JPG Dönüştür