Skip to content

Convertisseur d'Image en Base64

Convertissez des images en URI de données Base64 dans votre navigateur — PNG, JPG, GIF, WebP, SVG, ICO. Copiez la sortie HTML, CSS, Markdown et JSON. 100 % privé.

Sans pistage Fonctionne dans le navigateur Gratuit
Tout s'exécute dans votre navigateur. Vos images ne quittent jamais votre appareil.

Déposez une image ici, collez-la ou cliquez pour parcourir

PNG · JPG · GIF · WebP · SVG · ICO · BMP — converti entièrement dans votre navigateur

Vérifié pour l'exactitude des URI de données, la précision des métriques de taille, la détection MIME et les conseils de performance sur l'intégration — Équipe d'ingénierie Go Tools · 5 juin 2026

Qu'est-ce qu'une image Base64 (URI de données) ?

Une image Base64 est une image dont les octets binaires ont été réencodés en une chaîne de caractères ASCII imprimables à l'aide de l'alphabet Base64 (A–Z, a–z, 0–9, + et /). Enveloppée dans le schéma d'URI data: — data:image/png;base64,iVBORw0KGgo… — cette chaîne peut apparaître partout où une URL est attendue : un src d'img HTML, un background-image CSS, le corps d'un e-mail ou un champ dans une charge utile JSON. Le navigateur la décode à la volée et affiche l'image sans requête réseau séparée. C'est pourquoi les images Base64 sont parfois appelées images « en ligne » ou « intégrées ».

L'encodage existe pour une raison simple : de nombreux systèmes ont été conçus pour transporter du texte, pas du binaire arbitraire. HTML, JSON, en-têtes d'e-mail et URL attendent tous des caractères, et des octets d'image bruts contiendraient des codes de contrôle et des délimiteurs qui les casseraient. Le Base64 mappe chaque groupe de 3 octets binaires sur 4 caractères texte sûrs, garantissant que les données survivent intactes au transport. Le coût, c'est la taille : la représentation texte est environ 33 % plus volumineuse que le binaire d'origine, et elle ne peut pas être mise en cache indépendamment du document qui la contient.

Ce compromis définit quand les images Base64 ont du sens. Pour une petite icône utilisée dans une seule feuille de style, l'intégration supprime un aller-retour et la pénalité de taille est négligeable — un gain net. Pour une photo d'en-tête de 200 Ko réutilisée sur chaque page, l'intégration gonfle chaque page, contourne le cache du navigateur et coûte du CPU à décoder à chaque chargement — une perte nette. Le conseil moderne de l'ère HTTP/2 est de n'intégrer que les ressources petites et stables et de servir tout le reste sous forme de fichiers normaux mis en cache. Cet outil fait apparaître les chiffres exacts pour votre image et une recommandation en feu tricolore, pour que la décision repose sur des données, pas sur des croyances.

L'opération inverse — transformer une chaîne Base64 en une image visualisable et téléchargeable — est tout aussi utile lorsque vous déboguez un URI de données issu d'une feuille de style, inspectez une réponse d'API ou récupérez une ressource intégrée dans un fichier de configuration. Passez à l'onglet Base64 → Image ou ouvrez le décodeur Base64 en image dédié.

<!-- The same 1×1 transparent PNG, four ways -->

<!-- HTML -->
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==" alt="pixel">

/* CSS */
.badge {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==");
}

<!-- Markdown -->
![pixel](data:image/png;base64,iVBORw0KGgo…)

// JSON
{ "mime": "image/png", "data": "iVBORw0KGgo…" }

Fonctionnalités clés

Glisser, cliquer ou coller

Trois chemins d'entrée : déposer un fichier, le parcourir, ou coller une image directement depuis le presse-papiers avec Ctrl+V — la voie la plus rapide pour les captures d'écran. Tout ce que vous fournissez est encodé immédiatement, sans envoi.

Six formats de sortie

Base64 brut, un URI de données complet, un élément HTML , une règle CSS background-image, un lien d'image Markdown et un objet JSON. Chacun a son propre bouton Copier et une option Télécharger, pour que l'extrait soit prêt exactement dans le contexte voulu.

Métriques de taille et d'inflation en direct

La barre de métadonnées affiche la taille du fichier d'origine, la taille Base64 encodée et le pourcentage précis d'augmentation pour votre image spécifique — pas un générique « environ 33 % ». Vous voyez le vrai coût de l'intégration avant de vous y engager.

Badge de conseil d'intégration

Une recommandation en feu tricolore lit la taille de votre fichier et vous indique si un URI de données est une bonne idée : vert sous ~2 Ko, orange jusqu'à ~10 Ko, rouge au-delà. Il encode le consensus post-HTTP/2 pour que vous n'ayez pas à retenir les seuils.

Décodeur intégré

L'onglet Base64 → Image inverse le processus : collez une chaîne ou un URI de données et obtenez un aperçu en direct, les dimensions et le type MIME décodés, et un bouton Télécharger qui reconstruit le fichier d'origine. Il tolère les préfixes manquants et les espaces parasites.

Tous les formats courants

PNG, JPG, GIF (animation préservée), WebP, SVG, ICO et BMP — ainsi qu'AVIF lorsqu'il est pris en charge. Les octets bruts sont encodés tels quels, donc transparence, animation et vectorisation survivent toutes intactes.

Exemples

PNG en URI de données (prêt pour CSS / HTML)

transparent-1x1.png  (un PNG de 68 octets)
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==

Déposez un PNG et l'onglet URI de données vous donne une chaîne que vous pouvez coller directement dans un src HTML ou un url() CSS. La barre de métadonnées affiche la taille d'origine, la taille Base64 et le pourcentage exact d'augmentation.

Intégrer une icône SVG dans du HTML

icon.svg
<img src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0i…" alt="icon">

Passez à l'onglet HTML pour obtenir un élément prêt à coller. Pour le SVG en particulier, l'encodage URL est souvent plus compact que le Base64 — voyez la FAQ qui explique pourquoi le SVG est un cas particulier.

Image Markdown avec un JPG intégré

photo.jpg  (12 Ko)
![photo](data:image/jpeg;base64,/9j/4AAQSkZJRgABAQ…)

L'onglet Markdown produit un lien d'image autonome — pratique pour les fichiers README, les tickets GitHub et les notebooks où vous ne pouvez pas héberger un fichier externe. À 12 Ko, le badge de conseil passe à l'orange : pesez la commodité contre le coût en poids de page.

Comment convertir une image en Base64

  1. 1

    Ajoutez votre image

    Glissez une image sur la zone de dépôt, cliquez pour parcourir, ou collez depuis le presse-papiers avec Ctrl+V / Cmd+V. PNG, JPG, GIF, WebP, SVG, ICO et BMP sont tous pris en charge et encodés entièrement dans votre navigateur.

  2. 2

    Choisissez un format de sortie

    Choisissez URI de données, Base64 brut, HTML , arrière-plan CSS, Markdown ou JSON parmi les onglets. Consultez la barre de métadonnées pour l'augmentation de taille et le badge de conseil pour savoir si l'intégration en vaut la peine.

  3. 3

    Copiez ou téléchargez

    Cliquez sur Copier pour récupérer l'extrait, ou sur Télécharger pour l'enregistrer dans un fichier. Pour inverser le processus, passez à l'onglet Base64 → Image, collez une chaîne et téléchargez l'image reconstruite.

Pièges courants

Type MIME manquant ou erroné

Un URI de données doit déclarer le bon type de média ou le navigateur refuse de l'afficher. Encoder un PNG mais l'étiqueter image/jpeg, ou omettre le type entièrement, produit une image cassée. Copiez la sortie URI de données ou HTML directement depuis cet outil pour obtenir automatiquement le bon préfixe.

✗ Incorrect
data:base64,iVBORw0KGgo…
<!-- no MIME type — will not render -->
✓ Correct
data:image/png;base64,iVBORw0KGgo…
<!-- correct: image/png -->

Espaces ou retours à la ligne dans la chaîne

Certains outils découpent le Base64 à 76 caractères selon la RFC 2045, et le copier-coller peut injecter des espaces ou des retours à la ligne parasites. Dans un attribut HTML ou un url() CSS, ces ruptures peuvent invalider l'URI. Supprimez les espaces avant d'utiliser la chaîne — le décodeur de cet outil le fait automatiquement, donc un aller-retour par l'onglet Base64 → Image la nettoiera.

✗ Incorrect
data:image/png;base64,iVBORw0KGgoAAAANS
UhEUgAAAAEAAAABCAYAAAA…
<!-- embedded newline breaks the attribute -->
✓ Correct
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAA…
<!-- single unbroken line -->

Chaîne tronquée (remplissage perdu)

Les chaînes Base64 se terminent par zéro, un ou deux caractères de remplissage =. Une copie partielle qui supprime le = final (ou les derniers caractères) donne une chaîne indécodable et une image cassée. Si un collage ne s'affiche pas, vérifiez que vous avez copié toute la valeur, y compris tout remplissage final.

✗ Incorrect
…WjR9awAAAABJRU5ErkJggg
<!-- missing trailing == -->
✓ Correct
…WjR9awAAAABJRU5ErkJggg==
<!-- complete with padding -->

Encoder une grande photo en Base64

Encoder une photographie de plusieurs centaines de Ko produit une chaîne énorme qui gonfle votre HTML ou CSS, ne peut pas être mise en cache seule et est lente à décoder. Le badge de conseil passe au rouge précisément dans ce cas. Servez les grandes images comme des fichiers normaux ; réservez le Base64 aux petites ressources, et compressez d'abord.

✗ Incorrect
/* 380 KB hero photo inlined into a global stylesheet */
.hero { background-image: url("data:image/jpeg;base64,/9j/…(½ MB of text)…"); }
✓ Correct
/* Serve it as a cached file instead */
.hero { background-image: url("/img/hero.jpg"); }

Cas d'utilisation courants

Intégrer un logo ou une icône dans le CSS
Déposez un petit PNG ou une icône SVG, copiez l'extrait CSS background-image et collez-le dans votre feuille de style pour supprimer une requête HTTP sur une ressource qui change rarement. Gardez-le sous ~2 Ko (surveillez le badge vert) pour que la feuille de style reste légère.
Intégrer des images dans un e-mail HTML
Les clients de messagerie bloquent souvent les images distantes. Encodez votre logo en URI de données et collez l'élément dans le modèle pour qu'il s'affiche sans récupération serveur. Testez sur les différents clients — réservez l'intégration aux petites icônes, pas aux photos.
Markdown et README autonomes
Quand vous ne pouvez pas héberger une image — un ticket GitHub, un notebook, un document hors ligne — la sortie Markdown intègre l'image directement dans le fichier, pour qu'elle voyage avec le texte. Idéal pour les petits schémas et les badges.
Images dans des charges utiles JSON ou API
Besoin de transmettre une miniature dans un document JSON ou un fichier de configuration ? La sortie JSON vous donne un objet { mime, data } à déposer directement, et le décodeur récupère l'image à l'autre bout.
Débogage rapide d'URI de données
Vous avez trouvé un mystérieux URI data: dans une feuille de style ou une réponse d'API ? Collez-le dans l'onglet Base64 → Image pour voir ce que c'est réellement, lire ses vraies dimensions et le télécharger comme un fichier normal pour une inspection plus poussée.
Widgets et bookmarklets en un seul fichier
Les bookmarklets et les widgets intégrables doivent être autonomes, sans aucune dépendance externe. Intégrer leurs icônes en Base64 garde tout dans un seul fichier qui fonctionne quel que soit l'endroit où il est déposé.

Détails techniques

Comment fonctionne l'encodage Base64
Le Base64 prend le flux binaire de l'image trois octets (24 bits) à la fois et le découpe en quatre groupes de 6 bits, chacun mappé sur un caractère de l'alphabet de 64 symboles. Quand la longueur de l'entrée n'est pas un multiple de trois, un ou deux caractères de remplissage = marquent le reste. Ce rapport 3-vers-4 explique pourquoi le texte encodé est environ 33 % plus volumineux que la source. L'outil calcule la longueur d'octets décodée directement à partir de la longueur de la chaîne et du remplissage, si bien que les tailles qu'il indique sont exactes, pas estimées.
Détection MIME et octets magiques
Quand vous encodez un fichier, son type MIME provient de l'objet File du navigateur. Quand vous décodez une chaîne Base64 brute sans préfixe data:, l'outil inspecte les premiers caractères, qui correspondent aux octets magiques de l'image : iVBORw0KGgo pour PNG, /9j/ pour JPEG, R0lGOD pour GIF, UklGR pour WebP, et PHN2Zy ou PD94bWw pour SVG. Cela permet au décodeur de reconstruire un URI de données correct et de télécharger avec la bonne extension de fichier, même quand l'entrée n'est que la charge utile nue.
Traitement 100 % local
L'encodage utilise readAsDataURL de l'API FileReader, qui renvoie un URI de données synthétisé entièrement dans le navigateur. Le décodage pour le téléchargement utilise atob plus un Uint8Array pour reconstruire le binaire, puis un Blob et une URL d'objet — là encore sans aucun réseau. Le résultat est un outil que vous pouvez exécuter hors ligne et auquel confier des images confidentielles, car les octets ne quittent jamais la page. Vous pouvez vérifier le comportement sans requête dans les outils de développement de votre navigateur.

Bonnes pratiques

N'intégrez que des ressources petites et stables
Le créneau idéal du Base64, ce sont les ressources sous ~2 Ko qui changent rarement et apparaissent sur peu de pages — icônes, petits logos, sprites d'interface. Au-delà de ~10 Ko, la pénalité de taille et la perte de mise en cache l'emportent sur la requête économisée, surtout maintenant que HTTP/2 rend les requêtes supplémentaires peu coûteuses. Laissez le badge de conseil vous guider, et servez les photos et grands graphismes comme des fichiers normaux mis en cache.
Préférez l'encodage URL pour le SVG
Le SVG est du texte, donc le Base64 le gonfle sans gain. Pour intégrer un SVG dans du CSS ou du HTML, encodez plutôt le balisage en URL — c'est généralement plus compact, ça reste lisible et ça se compresse mieux avec gzip/brotli. Réservez le SVG en Base64 aux pipelines qui l'exigent spécifiquement. Notre Encodeur/Décodeur URL gère l'encodage en pourcentage.
Définissez toujours le bon type MIME
Un URI de données ne s'affiche que si son type MIME correspond au contenu : image/png, image/jpeg, image/gif, image/webp, image/svg+xml. Un type erroné ou manquant est la première cause d'échec d'affichage d'une image intégrée. Quand vous copiez depuis cet outil, le type est défini pour vous ; si vous assemblez les URI à la main, vérifiez bien le préfixe.
Compressez avant d'encoder
Comme le Base64 ajoute ~33 % à la taille du fichier, réduire la source d'abord est doublement rentable. Passez vos images dans notre Compresseur d'images — ou exportez aux bonnes dimensions — avant d'encoder, pour que l'URI de données résultant soit aussi petit que possible. Un PNG compressé de 4 Ko bat un original de 40 Ko, à la fois comme fichier et intégré.
Ne comptez jamais sur le Base64 pour la confidentialité
Le Base64 est trivialement réversible et n'offre aucune protection. Ne l'utilisez pas pour masquer un contenu d'image sensible — n'importe qui peut le décoder instantanément, y compris avec l'onglet de cette page. Si un contenu doit être protégé, utilisez de vrais contrôles d'accès et du chiffrement sur le serveur, et servez l'image via un point d'accès authentifié.

Questions fréquentes

Que fait ce convertisseur d'image en Base64 ?
Il lit une image que vous déposez, collez ou sélectionnez et encode ses octets en une chaîne Base64 — entièrement dans votre navigateur. Vous obtenez le Base64 brut, un URI de données prêt à l'emploi (data:image/png;base64,…) et des extraits prêts à coller pour HTML , CSS background-image, Markdown et JSON. Une barre de métadonnées indique la taille du fichier d'origine, la taille encodée, le pourcentage exact d'augmentation (le Base64 est environ 33 % plus volumineux), les dimensions en pixels et le type MIME. Rien n'est envoyé : l'encodage s'exécute localement via l'API FileReader, ce qui rend l'outil sûr pour les captures d'écran, les ressources internes et les visuels non publiés. Pour faire l'inverse, utilisez l'onglet Base64 → Image ou notre décodeur Base64 en image.
Mes images sont-elles envoyées à un serveur ?
Non. Chaque étape se déroule côté client dans votre navigateur via l'API FileReader et l'encodage de chaînes JavaScript. Votre image n'est jamais transmise, jamais stockée et jamais journalisée. Vous pouvez le vérifier en ouvrant l'onglet Réseau de votre navigateur — encoder une image ne déclenche aucune requête réseau. Cela rend l'outil sûr pour les contenus sensibles : captures d'écran de produits avant lancement, schémas internes, ressources clients et tout contenu sous NDA. Aucune limite de taille n'est imposée par un quota d'envoi, seulement la limite pratique de la taille de chaîne Base64 que votre navigateur et votre système cible peuvent gérer confortablement.
De combien le Base64 augmente-t-il la taille d'une image ?
Le Base64 encode chaque groupe de 3 octets de données binaires en 4 caractères ASCII, si bien que la chaîne encodée est environ 33 % plus volumineuse que le fichier d'origine (plus quelques octets de remplissage et le préfixe data:). Un PNG de 9 Ko devient environ 12 Ko de texte. Cette surcharge est la raison la plus importante de ne pas encoder de grandes images en Base64 : vous transmettez plus d'octets et, comme la chaîne est intégrée dans votre HTML ou CSS, ces octets sont retéléchargés à chaque modification du fichier conteneur et ne peuvent pas être mis en cache séparément. L'outil affiche l'augmentation exacte pour votre fichier spécifique dans la barre de métadonnées, pour décider avec de vrais chiffres.
Quand utiliser une image Base64 plutôt qu'un fichier normal ?
Le Base64 (sous forme d'URI de données) convient bien aux petites ressources qui changent rarement, lorsque éviter une requête HTTP séparée compte plus que la mise en cache : petites icônes et logos intégrés dans le CSS, images dans les e-mails HTML (de nombreux clients bloquent les images externes mais affichent les URI de données), widgets ou bookmarklets en un seul fichier qui doivent être autonomes, sprites SVG et images stockées dans des charges utiles JSON/API. Règle empirique : en dessous d'environ 2 Ko et utilisée sur une ou deux pages, l'intégration l'emporte généralement. Le badge de conseil de cet outil encode exactement cette heuristique — vert sous 2 Ko, orange jusqu'à 10 Ko, rouge au-delà.
Quand NE PAS utiliser d'images Base64 ?
Évitez le Base64 pour tout ce qui est volumineux ou réutilisé sur plusieurs pages. Quatre raisons concrètes : (1) l'augmentation de taille d'environ 33 % signifie plus d'octets sur le réseau ; (2) une image intégrée ne peut pas être mise en cache seule — elle est retéléchargée à chaque modification du HTML ou CSS qui la contient, et répétée sur chaque page qui l'intègre ; (3) décoder un grand URI de données consomme du CPU et de la batterie, ce qui est perceptible sur mobile ; et (4) vous perdez les images réactives (srcset/sizes) et le chargement différé. Comme HTTP/2 multiplexe à peu de frais de nombreuses petites requêtes, la raison initiale de l'intégration — réduire le nombre de requêtes — ne s'applique presque plus. Pour les photos, images d'en-tête ou tout ce qui dépasse ~10 Ko, un fichier normal mis en cache se charge presque toujours plus vite. Si l'objectif est un fichier plus petit, passez-le d'abord dans notre Compresseur d'images.
Comment utiliser la sortie Base64 dans HTML et CSS ?
Pour le HTML, passez à l'onglet HTML et collez l'élément généré : …. Pour le CSS, utilisez l'onglet CSS, qui enveloppe l'URI de données dans background-image: url("data:image/png;base64,…"). Les deux fonctionnent partout où une URL est acceptée — src d'img, arrière-plan CSS, mask-image, voire balises link de favicon. Le schéma data: est pris en charge par tous les navigateurs modernes. Une réserve : des URI de données très longs dans du HTML en ligne peuvent nuire à la lisibilité et, en CSS, gonfler la feuille de style livrée à chaque visiteur, alors réservez l'intégration aux ressources réellement petites.
Quels formats d'image sont pris en charge ?
PNG, JPEG/JPG, GIF (y compris animés), WebP, SVG, ICO et BMP sont tous pris en charge, ainsi que AVIF lorsque le navigateur sait le décoder. Comme l'outil encode les octets bruts plutôt que de réafficher l'image, les GIF animés restent animés, les PNG transparents conservent leur canal alpha et les SVG demeurent entièrement vectoriels. Le type MIME est lu depuis le fichier lui-même et, lorsque vous collez du Base64 brut dans le décodeur, déduit des octets magiques des données. Il n'y a aucune conversion de format pendant l'encodage — la sortie représente exactement le fichier que vous avez fourni.
Pourquoi le SVG est-il un cas particulier ?
Le SVG est du texte XML, pas du binaire, alors le Base64 le rend en réalité plus volumineux et moins lisible sans aucun bénéfice. Pour intégrer un SVG dans du CSS ou du HTML, l'encodage URL du balisage (encodage en pourcentage de quelques caractères comme #, <, > et les guillemets) est généralement plus compact que le Base64 et garde la source lisible et compressible avec gzip. Cet outil propose tout de même une sortie SVG en Base64 car certains pipelines l'exigent, mais si vous optimisez du CSS à la main, préférez un URI de données encodé en URL. Notre Encodeur/Décodeur URL facilite cette approche.
Le Base64 est-il la même chose qu'un chiffrement ?
Non. Le Base64 est un encodage, pas un chiffrement — il est entièrement réversible par quiconque, sans aucune clé. Il existe pour représenter des données binaires à l'aide d'un jeu sûr de caractères ASCII imprimables, afin que les données survivent au transport à travers des systèmes qui ne gèrent que du texte (HTML, JSON, en-têtes d'e-mail, URL). N'importe qui peut décoder une chaîne Base64 vers l'image d'origine en quelques secondes, y compris avec l'onglet Base64 → Image proposé ici. Ne traitez jamais le Base64 comme un moyen de cacher ou de protéger un contenu d'image sensible ; il n'offre aucune confidentialité.
Puis-je intégrer une image Base64 dans un e-mail ?
Oui, et c'est l'un des meilleurs usages de la technique. De nombreux clients de messagerie bloquent par défaut les images hébergées en externe pour des raisons de confidentialité, ce qui casse les mises en page reposant sur des logos distants. Intégrer de petites images sous forme d'URI de données garantit qu'elles s'affichent immédiatement sans récupération serveur. Les compromis : certains anciens clients (notamment certaines versions d'Outlook) prennent mal en charge les URI de données, et les gros visuels intégrés gonflent la taille du message que chaque destinataire télécharge. Gardez les images intégrées petites — logos et icônes, pas des photographies — et testez sur vos clients cibles.
Pourquoi mon image Base64 ne s'affiche-t-elle pas ?
Les causes les plus fréquentes : un type MIME manquant ou erroné dans le préfixe data: (utilisez image/png pour PNG, image/jpeg pour JPG, image/svg+xml pour SVG), des espaces ou des retours à la ligne insérés par erreur dans la chaîne, une copie tronquée qui a perdu le remplissage final (= ou ==), ou le collage du seul Base64 brut sans le préfixe data:…;base64, là où une URL est attendue. Le décodeur de cet outil est tolérant — il supprime les espaces, accepte une entrée avec ou sans préfixe et déduit le MIME des octets magiques de l'image — alors coller votre chaîne dans l'onglet Base64 → Image est le moyen le plus rapide de vérifier si les données elles-mêmes sont valides.