← Retour au Blog

Comprimer des captures d'écran sans flouter le texte (ce qui marche vraiment)

Vous faites une capture d'écran — un rapport de bug, un message d'erreur bizarre, un reçu, un bout de code à montrer à un ami — et dès que vous la collez quelque part, elle paraît… molle. Floue. Comme si on avait passé un peu de Vaseline sur les lettres. Vous l'envoyez quand même. « Tu peux m'envoyer une version plus nette ? », vous répond-on.

Alors vous faites ce que tout le monde dit : vous l'ouvrez, vous cliquez « Enregistrer sous », vous choisissez JPG, parce que le JPG réduit la taille, non ? Sauf que le texte est pire, et le fichier pèse à peine moins. Bienvenue dans la chose la plus mal comprise à propos des captures d'écran.

Voilà ce que personne n'explique : une capture n'est pas une photo. Une photo, c'est un million de petits dégradés — ciel, peau, ombres — et le JPEG a été conçu exactement pour ça. Une capture, c'est du texte et des aplats de couleur. Des bords nets partout. Le JPEG déteste les bords nets. Quand il rencontre une ligne de texte, il doit l'approcher, et cette approximation, c'est ce que vous voyez en flou et en halos scintillants autour des lettres. Le PNG, lui, conserve ces bords à la perfection. Voilà pourquoi votre capture était parfaite en PNG et pâteuse en JPG.

J'en ai assez pour arrêter de deviner et mesurer pour de vrai. J'ai pris trois captures réelles — un éditeur de code, une fenêtre de réglages et un terminal — et je les ai passées par deux chemins : le bon (compression par palette / PNG8, le même moteur que notre compresseur d'images utilise pour les PNG) et le paresseux (export en JPEG à la qualité 70, celle que la plupart des apps utilisent par défaut).

CapturePNG originalPNG8 (net)JPEG q70 (flou)
Éditeur de code175 Ko65 Ko122 Ko
Fenêtre de réglages48 Ko21 Ko57 Ko
Terminal69 Ko27 Ko74 Ko

Relisez la colonne JPEG. Pour les trois, le JPEG « plus léger » n'était pas seulement flou — il était plus lourd que le vrai PNG8. Sur l'éditeur de code, le JPEG est sorti à 122 Ko, presque le double des 65 Ko du PNG8, et le texte a l'air d'avoir passé un cycle de lavage. La version PNG8 est plus petite et chaque caractère est identique à l'original, au pixel près.

Empilez-les et ça monte vite. Vingt captures comme celles-ci font environ 1,9 Mo à l'origine et descendent à environ 800 Ko en PNG8 — toujours nettes, désormais assez légères pour les déposer dans n'importe quel ticket ou document sans y penser deux fois.

Pourquoi « Enregistrer sous » en JPG est un réflexe à éviter

La compression JPEG jette par-dessus bord des détails que votre œil, soi-disant, ne verra pas sur une photo. Sur un coucher de soleil, ça passe — vous ne remarqueriez rien. Sur une ligne de texte de 11 points, c'est un désastre, car le texte est exactement ce qu'il y a de plus détaillé et contrasté, donc ce que le JPEG gère le pire. Le codeur arrondit ces bords, vous obtenez du flou, et comme les captures sont surtout des aplats (qui se compressent très bien en PNG), le fichier JPEG finit souvent plus lourd que le PNG de départ. Vous perdez en qualité sans rien gagner.

La seule exception : si votre « capture » est en réalité l'image d'une vidéo ou d'une scène 3D — quelque chose avec des dégradés doux —, un JPEG ou un WebP fera l'affaire sur ces parties. Mais les étiquettes de texte par-dessus restent plus nettes en PNG. La règle sûre, donc, reste la même : gardez-la en PNG, compressez simplement le PNG comme il faut.

Ce qui marche vraiment : la compression PNG8 (palette)

Le PNG8 prend les couleurs de l'image et les range dans une petite palette — 256 ou moins — puis réenregistre l'image en n'utilisant que celles-ci. Pour une capture, qui n'utilise de toute façon qu'une poignée de couleurs, ça touche à peine au visuel. La couleur du texte devient une entrée de la palette ; elle ressort exacte. Le fichier rétrécit parce que vous ne stockez plus des millions de pixels redondants en pleine profondeur.

C'est exactement ce que fait notre compresseur quand vous déposez un PNG : il le réencode en PNG8 optimisé, en local, dans votre navigateur. Rien ne quitte votre machine.

La même capture de l éditeur avant compression (175 Ko) et après PNG8 (65 Ko) : le texte reste net au pixel
Une vraie capture : 175 Ko telle que sortie de l outil, descendue à 65 Ko après le PNG8. Pas de flou, pas de halo autour du texte, juste un fichier plus léger. La version JPEG de la même capture pesait 122 Ko et était pire.

La méthode que j'utilise

Vous mettrez plus de temps à lire ceci qu'à le faire :

  1. Réunissez les captures à envoyer ou à publier. Dix, c est normal pour un rapport de bug ou un mode d emploi.
  2. Déposez-les dans le compresseur — le lot fonctionne, pas besoin de le faire une par une.
  3. Laissez-les réencoder en PNG8. Vous ne touchez à aucun curseur de qualité ; la compression par palette garde la netteté par conception.
  4. Téléchargez et utilisez-les. Elles sont plus légères, nettes, et se collent proprement dans Slack, un ticket, un document ou un formulaire.

Si vous butez sur une limite de dépôt stricte — un portail de support qui plafonne un fichier à 20 Ko, par exemple — la compression par palette seule ne suffira peut-être pas, car les captures de texte ont un plancher. Pour celles-là, baissez aussi un peu la résolution (une capture plus petite) et acceptez parfois un léger adoucissement JPEG. Notre guide de compression à 20 Ko traite exactement ce cas sans que le formulaire vous la refuse.

Quand vous voulez vraiment du JPEG

Rien de tout cela ne fait du JPEG un mauvais choix. C'est le bon pour de vraies photographies — photos de téléphone, RAW d'appareil, images produit. Si vous envoyez par mail un lot de photos, c'est un autre problème avec un autre correctif (réencodez en JPEG qualité 75, pas en PNG). J'ai écrit une autre explication sur la façon de passer sous la limite avec des photos trop lourdes pour un mail si c'est votre cas.

L'idée est simple : accordеz le format à l'image. Photo → JPEG. Capture → PNG8. Vous les mélangez et soit vous gonflez le fichier, soit vous floutez le texte. En général les deux.

La version facile

Vous ne devriez pas avoir à réfléchir à des palettes et des codeurs juste pour envoyer une capture lisible. La raison pour laquelle j'ai construit cet outil, c'est que toutes les apps de « compression » que j'ai testées vous forçaient soit tout en JPEG (texte flou), soit uploadaient vos fichiers sur un serveur (non merci). Ce qui marche : ouvrez la page, déposez les captures, téléchargez des PNG plus petits et nets, terminé — tout dans le navigateur, rien n'est uploadé.

La prochaine fois que quelqu'un répondra « tu peux m'envoyer une version plus nette ? », vous saurez que le correctif n'a jamais été « enregistrer sous JPG ». C'était « ne le laissez pas devenir un JPG ».

Réduisez les captures, gardez le texte net

Déposez vos captures, laissez-les réencoder en PNG8 et téléchargez des PNG plus petits et nets. Gratuit, dans le navigateur, privé : vos fichiers ne quittent jamais votre appareil.

Compresser des captures gratuitement →
À propos de l'auteur : Chuan Développeur indépendant fatigué d'envoyer des captures floues et de voir les outils de « compression » uploader ses fichiers sur un serveur à la dérobée. A construit CompactJPG pour faire de la récompression PNG8 dans le navigateur, afin que le texte reste net et que les fichiers ne quittent jamais l'appareil.