Un utilisateur téléverse une photo prise avec un iPhone. Le fichier est en HEIC, environ 1,8 Mo. Votre balise <img> ne peut pas compter dessus : HEIC n'a pas de prise en charge native dans Chrome, Firefox ou Edge. L'image devient donc soit un JPG de 3,4 Mo, soit un WebP d'environ 1,2 Mo sans différence visible. Cet écart explique pourquoi WebP est la réponse aux photos qui arrivent en HEIC.
Ce guide couvre la conversion de HEIC en WebP, la comparaison des tailles entre formats, et les options, d'un outil dans le navigateur à une commande shell à glisser dans un build.
Pourquoi WebP et pas HEIC
HEIC est excellent pour stocker des photos, environ la moitié de la taille de JPEG à qualité égale. Mais il est inutilisable sur le web comme format de diffusion. Chrome, Firefox, Edge et Safari prennent tous en charge WebP depuis des années, alors que la prise en charge de HEIC n'existe que dans Safari et quelques endroits spécifiques aux constructeurs. Vous ne pouvez pas compter sur HEIC pour des images téléversées par les utilisateurs, et c'est précisément pour cela que des chaînes de conversion existent.
WebP couvre le même terrain que HEIC : c'est un format avec perte construit sur une compression moderne, avec un mode sans perte et la transparence alpha. Pour une photo, la différence pratique entre WebP et JPG à même qualité visuelle est un fichier environ 25 à 35 % plus petit. C'est une économie significative sur une page riche en images.
La comparaison des tailles
Même photo de 12 MP, même qualité visuelle :
| Format | Taille | Navigateurs | Notes |
|---|---|---|---|
| HEIC | ~1,8 Mo | Safari uniquement | format source des iPhone |
| JPG | ~3,4 Mo | tous | référence |
| WebP | ~1,2 Mo | tous | avec perte, avec prise en charge de l'alpha |
| PNG | ~24 Mo | tous | sans perte, pas pour les photos |
Le guide des formats d'image web contient la comparaison complète si vous voulez comprendre où se situe WebP par rapport à JPG et PNG.
Option 1 : convertir dans un navigateur
La voie la plus simple est un outil qui fonctionne entièrement sur l'appareil. Le convertisseur HEIC vers WebP décode HEIC localement avec WebAssembly et écrit des fichiers WebP, si bien que les photos ne quittent jamais la machine. Vous pouvez régler la qualité, convertir tout un dossier et télécharger les résultats en ZIP. Cela fonctionne pour une conversion ponctuelle et pour un designer ou un éditeur qui n'est pas à l'aise avec la ligne de commande.
Option 2 : convertir en ligne de commande
Pour un pipeline, la pile classique est libheif plus libwebp. Sur macOS avec Homebrew :
brew install libheif webp
Convertissez ensuite avec heif-convert et cwebp :
heif-convert input.heic output.png
cwebp -q 82 output.png -o output.webp
Ou sautez le fichier intermédiaire avec ffmpeg :
ffmpeg -i input.heic -c:v libwebp -quality 82 output.webp
Les deux commandes acceptent un argument de qualité, et cwebp offre le plus grand ensemble de contrôles, y compris le mode sans perte et -m 6 pour la sortie la plus lente et la plus petite. Pour un dossier, bouclez :
for f in *.heic; do heif-convert "$f" "${f%.heic}.png"; cwebp -q 82 "${f%.heic}.png" -o "${f%.heic}.webp"; done
C'est assez pour l'intégrer dans un script shell ou un job CI qui traite les téléversements côté serveur.
Choisir la qualité et le format dans WebP
Deux décisions affectent la sortie plus que tout le reste :
- Avec perte ou sans perte.
cwebp -losslessou-q 100avec l'option sans perte conserve chaque pixel mais produit des fichiers plus lourds. Utilisez-le pour les captures d'écran, les logos et tout ce qui contient des aplats de couleur et du texte. Utilisez le mode avec perte pour les photos. - Le chiffre de qualité.
-q 82est un défaut raisonnable pour les photos : visuellement propre et bien plus petit que JPG. Pour des cibles de haute qualité,-q 90coûte plus d'octets mais reste plus proche de la source. C'est le même compromis que les réglages de qualité JPG, que HEIC vers JPG sans perte de qualité explique en détail.
WebP gère aussi l'alpha, donc une image HEIC avec un canal de transparence survit au voyage, alors que JPG le perdrait.
Une note sur les formats plus récents
AVIF, le successeur basé sur AV1, bat généralement WebP sur la taille, et il est maintenant pris en charge par tous les navigateurs majeurs. Si vous construisez un pipeline neuf et pouvez choisir votre décodeur, AVIF vaut la peine d'être testé contre WebP sur vos images spécifiques. Le compromis porte sur la vitesse de l'encodeur et la maturité des outils, ce qui explique pourquoi WebP reste le choix sûr par défaut pour la plupart des équipes. Le guide des formats d'image web en dit plus sur la place de chaque format.
En bref
Convertissez HEIC en WebP pour tout ce qui doit finir sur un site web. C'est pris en charge partout, plus petit que l'alternative JPG à qualité égale, et convertible avec un outil dans le navigateur ou un pipeline shell de deux commandes. Gardez le HEIC d'origine comme source de vérité, convertissez au moment du téléversement ou dans un job par lots, et laissez le format faire les calculs de temps de chargement à votre place.