PK Systems PK Systems
Encodeurs et décodeurs

Encodeur et décodeur d'images Base64

Convertissez des images en data URL Base64 et inversement. Déposez un fichier ou collez une data URL — ne quitte jamais votre navigateur.

Encodeur et décodeur d'images Base64

Glissez-déposez une image, ou cliquez pour choisir Supporte PNG, JPG, WebP, GIF et SVG.

Image encodée

Qu'est-ce qu'une data URL Base64 ?

Une data URL emballe un petit fichier directement dans une chaîne de la forme data:<mime>;base64,<payload>. Les navigateurs la traitent comme toute autre URL — vous pouvez la déposer dans <img src>, dans un background-image CSS, ou dans une signature d'e-mail. Le Base64 fait grossir les octets d'origine d'environ 33 %, c'est donc préféré pour les très petits assets (icônes, sprites, petits avatars). Pour quelque chose de plus gros, vous voulez en général un fichier image normal derrière un CDN.

Comment utiliser cet outil

En mode Encoder, déposez ou choisissez une image et copiez la version dont vous avez besoin : data URL complète, base64 brut (sans préfixe) ou balise <img> toute prête. En mode Décoder, collez une data URL ou une chaîne base64 brute et l'image se ré-affiche dans l'aperçu — pratique quand vous en trouvez une dans le CSS de quelqu'un d'autre ou un e-mail HTML exporté et que vous voulez voir ce que c'est. Changez de mode avec la pastille en haut.

Quand (et quand ne pas) inliner les images

Bons cas : minuscules logos et icônes livrés dans le même fichier HTML/CSS, graphismes de signature dans des e-mails transactionnels, intégration d'un asset dans une démo HTML mono-fichier. Mauvais cas : images de hero, galeries photo, tout asset réutilisé entre pages — le base64 désactive le cache HTTP pour cet asset, bloque le chargement parallèle des images, gonfle votre HTML/CSS et nuit au Largest Contentful Paint. Règle : sous environ 2 Ko encodé c'est généralement OK ; au-dessus, préférez un fichier classique.

Types MIME courants

Le type MIME après data: indique au navigateur comment décoder le payload — se tromper (par ex. livrer un JPG en image/png) casse l'image silencieusement dans certains navigateurs.

Format Type MIME Notes
PNGimage/pngLossless, supports transparency. Best for icons and UI.
JPG / JPEGimage/jpegLossy. Best for photos. No transparency.
WebPimage/webpSmaller than PNG/JPG; supported by all modern browsers.
GIFimage/gifAnimated, 256-colour. Heavier than WebP/MP4 for video.
SVGimage/svg+xmlVector. Prefer URL-encoded over base64 in CSS.

Questions fréquentes

L'image quitte-t-elle mon navigateur ?
Non. L'image est lue localement et transformée en data URL directement dans cet onglet. Pas d'envoi, pas de saut serveur, aucun appel d'analytics qui transporte l'image. Vous pouvez glisser-déposer puis vous déconnecter du réseau — ça marche encore. Cela rend l'outil sûr pour des captures d'écran, des maquettes internes, des comps de design, des documents signés ou tout autre artwork privé que vous ne confieriez pas à un hébergeur tiers.
Pourquoi la chaîne base64 est-elle bien plus longue que le fichier ?
Le Base64 représente chaque tranche de 3 octets binaires en 4 caractères ASCII, donc la chaîne encodée est environ 33 % plus longue que le fichier d'origine. La data URL ajoute encore quelques octets pour le préfixe data:<mime>;base64,.
Puis-je intégrer un SVG sans base64 ?
Oui — et vous devriez en général. Les SVG fonctionnent en texte brut dans une data URL avec juste un URL-encoding (data:image/svg+xml;utf8,<svg…>) et restent bien plus petits que la forme base64. Cet outil donne la version base64 par compatibilité ; pour du CSS de production, préférez la variante URL-encodée.
Les images inlinées sont-elles mises en cache par le navigateur ?
Seulement comme partie du document/CSS qui les contient. Elles ne peuvent pas être mises en cache individuellement comme un fichier image classique. Si la même icône est inlinée dans dix pages, chaque page la retélécharge. C'est pour ça que l'inlining n'est rentable que pour de très petits assets utilisés une ou deux fois.
Puis-je décoder une chaîne base64 quelconque ?
Oui — collez-la dans la zone en mode Décoder. Si elle n'a pas de préfixe data:, l'outil tente de détecter le type d'image depuis les octets magiques (PNG, JPG, GIF, WebP, SVG). Si la détection échoue, vous obtiendrez une erreur « invalide » et pourrez préfixer manuellement avec data:image/png;base64,.
Pourquoi ma data URL contient-elle des sauts de ligne ?
Certains encodeurs enroulent le base64 à la colonne 76 (le standard MIME pour l'e-mail). Les navigateurs tolèrent ça dans <img src> mais quelques systèmes non. Cet outil émet toujours le base64 sur une seule ligne ; si vous collez une chaîne enroulée en mode décodage, nous retirons les espaces avant de décoder.