Une photo iPhone fait 3–6 Mo. Une capture d’écran de ton desktop fait 2–4 Mo. Un fichier « j’enregistre en PNG pour pas perdre de qualité » fait souvent 8 Mo. Multiplie par un portfolio, un blog, un thread email, et tu envoies des centaines de mégaoctets pour des images que personne ne distingue d’une version de 500 Ko.
La compression d’image comble cet écart. Zebra fait tourner des codecs d’images modernes directement dans ton navigateur via WebAssembly. Le fichier reste sur ton appareil. La plupart des photos sortent 60–90 % plus petites sans perte de qualité visible.
Trois étapes
- Ouvre le compresseur d’images.
- Glisse un JPG, PNG ou WebP (jusqu’à 25 Mo). Dépose-en plusieurs à la fois pour de la compression en lot — jusqu’à 5 fichiers quand tu es connecté, jusqu’à 15 en Premium.
- Choisis Léger, Moyen ou Fort, clique sur Compresser, puis Télécharger. Un fichier unique se télécharge directement ; plusieurs fichiers sortent en un ZIP.
Une photo iPhone de 4 Mpx finit en environ 2 secondes sur un Mac. Une photo de 12 Mpx prend 4–6 secondes. Mobile Safari ajoute deux secondes par-dessus. Un lot de 15 images se traite séquentiellement à peu près au même temps par fichier — pas d’upload, donc la vitesse, c’est ton CPU, pas ta connexion. Si tu dois plutôt réduire un document, le guide de compression PDF couvre la même approche.
Pourquoi les images deviennent grosses
- Résolution. Un JPEG iPhone 4032×3024 a 12,2 millions de pixels. Même à 4 octets par pixel non compressés, ça fait 50 Mo de données brutes. JPEG compresse à ~4 Mo, mais tu peux gratter 60 % de plus en ré-encodant avec un encodeur plus malin et un setting de qualité légèrement plus bas.
- Choix du format. PNG stocke chaque pixel sans perte. C’est juste pour les captures d’écran avec du texte net ou des icônes avec transparence. C’est faux pour les photos — tu dépenses 4 Mo pour encoder du bruit que JPEG jetterait volontiers.
- Qualité de l’encodeur. Les encodeurs JPEG natifs des navigateurs sont conservateurs. Zebra utilise un encodeur JPEG réglé avec quantification trellis et scans progressifs pour obtenir des fichiers 10–20 % plus petits à qualité égale. Même image, fichier plus petit.
- Métadonnées EXIF. Coordonnées GPS, modèle d’appareil, objectif, historique d’édition complet. Parfois utile, souvent des centaines de Ko dont tu n’as pas besoin. Zebra retire la plupart des EXIF au ré-encodage.
Les trois codecs qu’utilise Zebra
Zebra choisit le bon codec selon ton format de fichier et son contenu :
- mozjpeg — pour les entrées JPEG et la conversion auto des PNG-sans-alpha. Utilise la quantification trellis pour systématiquement battre les encodeurs natifs des navigateurs et le « Save for Web » de Photoshop de 10–20 % à qualité équivalente.
- oxipng — pour les PNG avec vraie transparence. Ré-optimisation DEFLATE sans perte avec plusieurs passes de filtre. Un set d’icônes PNG de 1 Mo finit typiquement à 700–800 Ko ; les données sont bit-perfect, juste mieux empaquetées.
- libwebp — pour les entrées WebP. WebP est déjà efficace, mais ré-encoder à une cible de qualité choisie taille encore 20–40 %.
Les trois codecs sont compilés en WebAssembly via le projet jSquash. Ils tournent entièrement dans ton onglet de navigateur — pas de serveur, pas d’upload, pas de télémétrie.
Auto-mode : PNG → JPEG quand c’est safe
La plupart des fichiers « PNG » n’ont pas vraiment besoin d’être des PNG. Les gens sauvegardent des photos en PNG en pensant « sans perte = meilleure qualité », et se retrouvent avec un fichier de 4 Mo là où un JPEG de 400 Ko serait identique à l’œil.
Zebra vérifie chaque PNG que tu déposes : si le canal alpha est entièrement opaque (pas de transparence), le fichier est ré-encodé en JPEG. C’est un gain de taille de 5–10× sur les photo-PNG sans différence perceptible. Si le PNG a une vraie transparence (maquette UI, icône, sticker), il reste un PNG — Zebra le ré-optimise sans perte sans toucher à l’alpha.
Tu n’as pas à choisir. Dépose le fichier. On prend le bon chemin.
Léger, Moyen, Fort
| Preset | JPEG q | WebP q | Niveau d’opt. PNG | Économie typique |
|---|---|---|---|---|
| Léger | 88 | 88 | 2 | 30–50 % |
| Moyen | 78 | 78 | 4 | 60–80 % |
| Fort | 65 | 65 | 6 | 80–95 % |
Léger à qualité 88 est visuellement identique à l’original sur n’importe quel écran normal. Utilise-le pour les photos que tu vas imprimer ou zoomer, ou quand tu veux juste retirer les métadonnées et resserrer l’encodage.
Moyen à qualité 78 est le défaut. La sortie est assez nette pour imprimer en A4, indiscernable sur Retina ou mobile. Choisis ça à moins d’avoir une raison spécifique de pas le faire.
Fort à qualité 65 introduit des artefacts visibles sur les zones plates (ciels, murs) si tu zoomes à 200 % et plus, mais c’est parfait pour l’email, le partage web et le chat où la taille compte plus que le pixel-peeping.
Pourquoi rien ne quitte ton appareil
La plupart des compresseurs d’images gratuits — TinyPNG, Compressor.io, ImageOptim Online — uploadent ton fichier sur leur serveur. Ce modèle a de vrais coûts :
- Ton image atterrit sur le disque de quelqu’un d’autre. Même avec une promesse « supprimé en 24 h », il y a une fenêtre de rétention. Pour les photos d’identité, les captures d’écran de chats privés, ou tout ce qui est propriétaire, cette fenêtre est la mauvaise fenêtre.
- Tu uploades deux fois la bande passante. Vers le serveur, depuis le serveur. Sur mobile, c’est la partie lente.
- Les métadonnées EXIF voyagent avec le fichier. Les coordonnées GPS de ton téléphone sont cuites dans l’en-tête du JPEG. Quand tu uploades, le serveur les lit aussi.
Zebra fait tourner des codecs d’images modernes comme des modules WebAssembly dans ton onglet de navigateur. L’image est décodée, ré-encodée et ré-empaquetée localement. Pas d’appels réseau. Pas de fenêtre de rétention. Si tu passes hors ligne après avoir chargé la page, la compression marche toujours.
JPG vs PNG vs WebP — lequel garder
Un petit arbre de décision pour le format dans lequel tu devrais sauvegarder (après compression) :
- Photo d’une scène réelle, sans besoin de transparence ? JPEG. Qualité 78–85 est largement suffisante pour tout sauf l’impression.
- Photo avec transparence (rare — généralement un détourage) ? WebP si ton audience utilise des navigateurs 2022+. PNG comme fallback sûr.
- Capture d’écran UI, icône, logo, tout ce qui a du texte net ? PNG. Les artefacts JPEG autour du texte sont moches et impossibles à corriger.
- Animation ? WebP (ou GIF pour la compatibilité antique). Le PNG animé marche aussi mais le support est patchy.
- Web moderne avec support navigateur complet ? WebP partout. AVIF quand Zebra l’ajoutera.
Quand NE PAS compresser
- Fichiers maîtres pour l’édition. Garde les originaux en pleine qualité. Compresse les copies. Si le seul but est de coller à un ratio des réseaux sociaux, souvent un premier pas plus malin est de recadrer la photo plutôt que de réduire la qualité.
- Fichiers déjà tout petits. Sous 200 Ko ne vaut généralement pas le coup — l’overhead du ré-encodage peut coûter plus que ce que tu économises.
- Captures d’écran avec du texte net. Les artefacts JPEG ruineront le texte. Reste en PNG — Zebra le ré-optimisera sans perte (ça arrive automatiquement pour les captures d’écran avec transparence).
- Tout ce que tu vas imprimer en A3 ou plus grand. Reste sur Léger ou saute la compression.
Zebra détecte aussi quand le ré-encodage rend le fichier plus gros (PNG déjà optimisés, petits JPEG à basse qualité) et te rend l’original au lieu de faire semblant de le réduire.