Base64 vers image
Coller les images à gauche
Décodez des données Base64 en image prévisualisable et téléchargeable, compatible avec PNG/JPG/WebP/GIF/SVG et plus de 7 formats courants. Reconnaît automatiquement le préfixe Data URL, prévisualisation directe dans le navigateur, idéal pour le débogage d'API et la vérification d'encodage.
Recommandations connexes
Qu'est-ce que Base64 vers image ?
Base64 vers image est le processus inverse de l'encodage Base64 : il restitue une chaîne encodée Base64 en données binaires d'image d'origine (formats PNG / JPG / WebP / GIF / SVG, etc.) pour prévisualiser directement dans le navigateur ou télécharger comme fichier image local. C'est un outil indispensable pour traiter les images renvoyées par les API, les ressources inline (Data URL), les pièces jointes d'e-mail en Base64, etc.
**Principe fondamental :** Base64 encode des données binaires en 64 caractères ASCII imprimables (A-Z, a-z, 0-9, +, /). La conversion en image consiste à restituer cette chaîne ASCII en flux d'octets binaire d'origine, puis le navigateur l'interprète comme image selon le type MIME spécifié (image/png, etc.). Un Data URL (comme `data:image/png;base64,iVBORw0KGgo...`) est une combinaison de Base64 avec un préfixe MIME ; l'outil le reconnaît et le traite automatiquement.
**Cas d'usage typiques :** ①Débogage d'API : de nombreuses API renvoient des captchas, avatars utilisateur ou signatures électroniques directement sous forme de chaîne Base64, le frontend doit restituer pour visualiser ; ②Développement frontend : les petites icônes intégrées en Data URL (CSS background-image: url(data:image/png;base64,...)) peuvent être collées dans l'outil pour voir le rendu réel ; ③Restitution de pièces jointes d'e-mail : les pièces jointes encodées en MIME Base64 peuvent être décodées et sauvegardées comme image d'origine ; ④Données de scraping : les images Base64 extraites peuvent être décodées et sauvegardées en fichiers locaux ; ⑤Prétraitement OCR : décoder puis utiliser un outil OCR pour reconnaître le contenu de l'image.
**Formats d'image pris en charge :** L'outil prend en charge tous les types MIME d'image reconnus nativement par les navigateurs : PNG (image/png), JPG/JPEG (image/jpeg), WebP (image/webp), GIF (image/gif), SVG (image/svg+xml), BMP (image/bmp), AVIF (image/avif), ICO (image/x-icon), etc. Chaque format utilise des algorithmes de compression différents et convient à des usages variés : PNG sans perte pour icônes et captures d'écran, JPG avec perte pour photos, WebP recommandé pour navigateurs modernes, SVG vectoriel pour icônes et logos.
**Sécurité du décodage :** Toutes les opérations de décodage s'exécutent dans le navigateur via JavaScript (basées sur `atob()` + `TextDecoder` ou l'API `Blob`), les données binaires d'image ne sont envoyées à aucun serveur. Les chaînes Base64 contenant des informations sensibles (comme avatars utilisateur, captures d'écran internes) peuvent être utilisées en toute confiance, toutes les données sont automatiquement effacées à la fermeture de la page.
Cas d'utilisation
- Restituer les données d'image Base64 renvoyées par une API en fichier image prévisualisable et téléchargeable
- Vérifier si les ressources d'image frontend inline (format Data URL) sont correctement encodées
- Confirmer l'intégrité du contenu Base64 lors du débogage d'API d'upload d'image
- Sauvegarder une image Base64 en fichier PNG/JPG local pour le design ou la documentation
- Décoder des pièces jointes d'e-mail encodées en Base64 pour restituer l'image
- Restituer et sauvegarder sur disque des images Base64 extraites par scraping
- Décoder un Data URL pour vérifier le rendu réel d'une icône SVG
- Restituer en fichier local les images Base64 renvoyées par des API OCR / IA pour visualisation
Comment utiliser
- Collez les données d'image encodées en Base64 (avec ou sans préfixe Data URL, comme data:image/png;base64,iVBORw0KG...)
- L'outil détecte automatiquement le type MIME et décode (reconnu dans le Data URL ou détecté via l'en-tête du contenu)
- La droite affiche en temps réel la prévisualisation de l'image, la taille du fichier et les dimensions
- Cliquez sur « Télécharger » pour sauvegarder en fichier image local, ou faites un clic droit sur l'image « Enregistrer l'image sous »
- En cas d'échec de décodage, spécifiez manuellement le type MIME ou prétraitez avec l'outil Base64 Clean
Fonctionnalités
- Prévisualisation d'image en ligne : affichage direct dans le navigateur après décodage, sans téléchargement local préalable
- Prise en charge multi-formats : compatible PNG / JPG / WebP / GIF / SVG / BMP / AVIF et plus de 7 types MIME d'image courants
- Reconnaissance automatique de Data URL : retire automatiquement le préfixe data:image/png;base64, pour extraire et décoder le contenu Base64 pur
- Saisie Base64 pur : prend en charge les chaînes Base64 sans préfixe, avec possibilité de spécifier le type MIME
- Téléchargement de fichier image : sauvegarde en un clic de l'image décodée en fichier PNG/JPG local
- Compte de caractères en temps réel : affiche nombre de caractères saisis, octets après décodage pour évaluer la taille de l'image
- Détection d'erreurs : indication précise de l'emplacement d'erreur (caractère Base64 invalide, longueur incorrecte, MIME inadapté) en cas d'échec
- Traitement local sans upload : décodage et prévisualisation entièrement dans le navigateur, sans passage par aucun serveur
- Compatibilité bidirectionnelle complète : s'utilise en paire avec l'outil Image vers Base64 pour un flux de conversion bidirectionnel complet
Exemples de code
JavaScript : décodage natif navigateur + prévisualisation Blob URL
javascriptUtiliser les API natives du navigateur atob() + TextDecoder + Blob pour décoder Base64 et afficher l'image dans le navigateur.
// Base64 → image (implémentation native navigateur)
function base64ToImage(base64String, mimeType = 'image/png') {
// 1. Retirer le préfixe Data URL (si présent)
const clean = base64String.replace(/^data:image\/\w+;base64,/, '');
// 2. Décodage natif navigateur atob() en chaîne binaire
const binary = atob(clean);
// 3. Conversion en Uint8Array
const bytes = new Uint8Array(binary.length);
for (let i = 0; i < binary.length; i++) {
bytes[i] = binary.charCodeAt(i);
}
// 4. Créer un Blob URL pour prévisualisation dans balise <img>
const blob = new Blob([bytes], { type: mimeType });
const url = URL.createObjectURL(blob);
// 5. Définir img.src pour prévisualiser
const img = document.createElement('img');
img.src = url;
img.onload = () => {
console.log(`Dimensions image: ${img.width}x${img.height}`);
console.log(`Taille fichier: ${bytes.byteLength} bytes`);
};
return { img, url, size: bytes.byteLength };
}
// Exemple d'utilisation :
const result = base64ToImage('iVBORw0KGgoAAAANSUhEUgAAAAUA...');
document.body.appendChild(result.img);
// Libérer le Blob URL (éviter fuite mémoire)
setTimeout(() => URL.revokeObjectURL(result.url), 60000);Python : décodage bibliothèque base64 et sauvegarde d'image
pythonDécoder des données Base64 en flux binaire d'image avec la bibliothèque standard Python base64, puis sauvegarder avec PIL/Pillow ou opérations de fichier intégrées.
import base64
from pathlib import Path
def base64_to_image(base64_string: str, output_path: str, mime_type: str = 'image/png'):
"""Décoder une chaîne Base64 et sauvegarder comme fichier image"""
# 1. Retirer le préfixe Data URL
if base64_string.startswith('data:image'):
# Format : data:image/png;base64,iVBORw0...
header, base64_string = base64_string.split(',', 1)
# Extraire automatiquement le MIME depuis le header
if 'image/' in header:
mime_type = header.split('data:')[1].split(';')[0]
# 2. Décodage
image_bytes = base64.b64decode(base64_string)
# 3. Sauvegarder dans un fichier
output_file = Path(output_path)
output_file.parent.mkdir(parents=True, exist_ok=True)
output_file.write_bytes(image_bytes)
print(f"✅ Sauvegardé : {output_file}")
print(f" Taille fichier : {len(image_bytes):,} bytes")
print(f" Type MIME : {mime_type}")
return output_file
# Exemple d'utilisation :
# 1. Chaîne Base64 obtenue depuis une réponse API
api_base64_response = "iVBORw0KGgoAAAANSUhEUgAA..."
# 2. Décoder et sauvegarder
base64_to_image(api_base64_response, 'output/captcha.png')
# 3. Optionnel : traitement ultérieur avec PIL
try:
from PIL import Image
img = Image.open('output/captcha.png')
print(f"Dimensions image : {img.size}")
img.save('output/captcha.png', optimize=True)
except ImportError:
print('Installer Pillow pour traiter les images : pip install Pillow')Java : java.util.Base64 + ImageIO pour décoder une image
javaDécoder un flux binaire d'image avec la bibliothèque standard Java Base64, puis traiter les métadonnées d'image avec ImageIO / BufferedImage.
import java.io.*;
import java.util.Base64;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
public class Base64ToImage {
public static void main(String[] args) throws Exception {
String base64String = "iVBORw0KGgoAAAANSUhEUgAA...";
String mimeType = "image/png";
// 1. Retirer le préfixe Data URL (si présent)
if (base64String.startsWith("data:image")) {
int commaIdx = base64String.indexOf(',');
String header = base64String.substring(0, commaIdx);
base64String = base64String.substring(commaIdx + 1);
// Extraire le MIME depuis le header
if (header.contains("image/")) {
mimeType = header.substring(header.indexOf("data:") + 5, header.indexOf(";"));
}
}
// 2. Décodage Base64
byte[] imageBytes = Base64.getDecoder().decode(base64String);
// 3. Sauvegarder dans un fichier
String extension = mimeType.substring("image/".length());
File outputFile = new File("output." + extension);
try (FileOutputStream fos = new FileOutputStream(outputFile)) {
fos.write(imageBytes);
}
System.out.println("✅ Sauvegardé : " + outputFile.getAbsolutePath());
System.out.println(" Taille fichier : " + imageBytes.length + " bytes");
// 4. (Optionnel) Lire les métadonnées d'image
ByteArrayInputStream bais = new ByteArrayInputStream(imageBytes);
BufferedImage image = ImageIO.read(bais);
if (image != null) {
System.out.println("Dimensions image : " + image.getWidth() + "x" + image.getHeight());
}
}
}FAQ
Quels formats d'image sont pris en charge ?
PNG, JPG, WebP, GIF, SVG, BMP, AVIF, ICO et tous les types MIME d'image reconnus nativement par les navigateurs sont pris en charge. L'outil détermine automatiquement le format selon le préfixe MIME du Data URL ou les caractéristiques de saisie, vous pouvez aussi spécifier manuellement le type MIME dans l'interface. Choisir le bon format garantit un décodage et un affichage corrects par le navigateur.
Faut-il inclure le préfixe data:image/png;base64 dans la saisie ?
Non. L'outil prend en charge deux formats de saisie : ①Chaîne Base64 pur (comme iVBORw0KGgoAA...), nécessite de sélectionner le type MIME dans l'interface (comme PNG / JPG) ; ②Format Data URL (comme data:image/png;base64,iVBORw0KGgo...), l'outil reconnaît automatiquement le type MIME dans le préfixe et décode. Les deux méthodes de saisie sont supportées.
Peut-on prévisualiser directement dans le navigateur ?
Oui. L'image décodée s'affiche directement dans le navigateur via Blob URL avec prévisualisation en ligne. Après avoir vérifié le contenu, téléchargez en fichier local ou copiez le Data URL pour intégration HTML/CSS. Tout le processus de prévisualisation ne nécessite aucune requête réseau.
Quelle différence avec l'outil Base64 vers fichier ?
Base64 vers image est optimisé spécifiquement pour les formats d'image : ①reconnaissance automatique du type MIME ; ②prévisualisation directe dans le navigateur via Blob URL ; ③ajout automatique de l'extension de fichier (.png / .jpg, etc.) selon le MIME ; ④affichage des dimensions de l'image. Base64 vers fichier est un outil générique adapté à la restitution et au téléchargement de tout fichier binaire (PDF, ZIP, audio, etc.).
Que faire si l'image décodée s'affiche incomplètement ?
Causes possibles : ①La chaîne Base64 est tronquée (vérifiez que la longueur est complète) ; ②Le type MIME spécifié est incorrect (par exemple décoder des données PNG comme JPG) ; ③Les données d'origine sont déjà corrompues. Suggestions : ①Vérifiez que le Base64 source est complet ; ②Essayez différents types MIME ; ③Vérifiez la validité avec l'outil Base64 Validate.
De combien la taille Base64 est-elle supérieure à l'image d'origine ?
L'encodage Base64 augmente la taille des données binaires d'origine d'environ 33 % (3 octets → 4 caractères). Par exemple, un PNG de 100KB devient environ 133KB de chaîne Base64 après encodage. C'est pourquoi Base64 convient aux petites images (< 10KB) ; pour les grandes images, il est recommandé d'utiliser une URL HTTP directe.
Les images vectorielles SVG sont-elles prises en charge ?
Oui. SVG est un format vectoriel basé sur XML ; après encodage Base64, il peut être intégré directement dans HTML <img> ou CSS background-image. Après décodage, il est rendu vectoriellement dans le navigateur avec mise à l'échelle sans perte. Attention : SVG peut contenir du code JavaScript, soyez vigilant à la sécurité XSS lors de l'utilisation.
Comment sauvegarder dans un format spécifique ?
Après décodage, cliquez sur le bouton de téléchargement ; l'outil ajoute automatiquement l'extension correspondante selon le type MIME du décodage (image/png → .png, image/jpeg → .jpg). Pour convertir le format (par exemple PNG → JPG), il est recommandé de décoder d'abord puis d'utiliser d'autres outils (comme Canvas / ImageMagick) pour la conversion.
L'image décodée est vide ou corrompue ?
Causes fréquentes : ①Le Base64 contient des sauts de ligne ou espaces non nettoyés — prétraitez d'abord avec l'outil Base64 Clean ; ②Le padding (=) est manquant — cet outil le complète automatiquement ; ③Le type MIME ne correspond pas aux données d'origine — vérifiez le Content-Type renvoyé par l'API source ou essayez manuellement d'autres MIME ; ④Le Base64 source a été tronqué pendant la transmission — récupérez à nouveau la chaîne complète.
Les grandes images (>10MB) sont-elles prises en charge ?
Oui, mais les performances de rendu des navigateurs diminuent pour les images très grandes. Le décodage d'un Base64 de 10MB (environ 7,5MB d'image originale) est généralement fluide ; au-delà de 50MB, des avertissements de mémoire peuvent apparaître. Suggestions : ①Utilisez d'abord base64-clean pour retirer les espaces ; ②Décodez les grandes images par blocs ; ③Vérifiez que la mémoire du navigateur est suffisante (4GB+ recommandés).
Dépannage
Image décodée affichée vide
Type MIME incompatible ou Base64 incomplet. Vérifiez : 1) l'en-tête Content-Type renvoyé par l'API source ; 2) changez manuellement de type MIME et réessayez ; 3) confirmez que la chaîne Base64 est complète (longueur conforme aux attentes).
Échec décodage InvalidCharacterError
La chaîne Base64 contient des caractères invalides (espaces, sauts de ligne, caractères chinois, etc.). Utilisez d'abord l'outil Base64 Clean pour retirer tous les espaces et caractères invalides, puis convertissez.
Extension de fichier image téléchargé incorrecte
Vérifiez que le type MIME lors du décodage correspond à l'image d'origine. Par exemple si l'API renvoie image/jpeg mais que les données Base64 sont en réalité PNG, l'extension sera .jpg après téléchargement mais le format sera PNG. Il est recommandé de confirmer le format d'origine depuis le préfixe MIME ou l'en-tête Content-Type.
Le navigateur se bloque lors du décodage d'une grande image
Une chaîne Base64 dépassant 50MB peut causer un dépassement de mémoire. Suggestions : ①Utilisez d'abord l'outil base64-clean pour retirer les espaces ; ②Décodez les grandes images par lots (par exemple par dalles) ; ③Vérifiez que la mémoire du navigateur est suffisante (4GB+ de mémoire disponible recommandés) ; ④Utilisez un script serveur Node.js / Python pour traiter les images très grandes.
Image SVG impossible à afficher après décodage
SVG est un format vectoriel basé sur XML ; après décodage, assurez-vous que : 1) le type MIME est image/svg+xml ; 2) SVG ne contient pas de caractères spéciaux non échappés ; 3) certains navigateurs appliquent des restrictions de sécurité au code JavaScript dans SVG. Il est recommandé de vérifier d'abord la validité du SVG avec un outil d'analyse XML.
Glossaire
- Base64
- Méthode d'encodage qui représente des données binaires avec 64 caractères ASCII, définie dans la RFC 4648. Opération inverse de cet outil : restituer une chaîne Base64 en binaire d'image d'origine.
- Data URL
- Format d'URL inline défini par la RFC 2397 : data:image/<MIME>;base64,<données>. Peut être utilisé directement dans HTML img src ou CSS background-image. Cet outil reconnaît automatiquement et retire le préfixe.
- Type MIME
- Type de média Internet, comme image/png, image/jpeg. Le navigateur détermine comment interpréter le flux d'octets comme image selon le MIME.
- PNG
- Format bitmap sans perte avec canal alpha. Souvent utilisé pour icônes, captures d'écran, images nécessitant de conserver les détails. La taille après encodage Base64 est environ 1,33 fois l'originale.
- JPG/JPEG
- Format bitmap avec perte adapté aux photos. Taux de compression élevé mais sans support de transparence. La taille après encodage Base64 est environ 1,33 fois l'originale.
- WebP
- Format d'image moderne développé par Google, supportant compression avec/sans perte et canal alpha. 25-35 % plus petit que PNG/JPG.
- Blob (Binary Large Object)
- Objet binaire natif du navigateur, peut encapsuler le flux d'octets décodé depuis Base64 en Blob URL d'image pour prévisualisation et téléchargement.
Tableau comparatif de 8 formats d'image
Différents formats d'image utilisent des algorithmes de compression, caractéristiques et cas d'usage variés.
| Format | Type MIME | Type de compression | Transparence | Usage typique |
|---|---|---|---|---|
PNG | image/png | Sans perte | ✅ | Icônes / Captures / Logo |
JPG | image/jpeg | Avec perte | ❌ | Photos / Paysages |
WebP | image/webp | Avec/sans perte | ✅ | Recommandé Web moderne |
GIF | image/gif | Sans perte (256 couleurs) | ✅ (1-bit) | Petites animations / Icônes simples |
SVG | image/svg+xml | Vectoriel | ✅ | Logo / Icônes / Illustrations |
BMP | image/bmp | Aucune | Optionnel | Images système Windows |
AVIF | image/avif | Avec/sans perte | ✅ | Format nouvelle génération |
ICO | image/x-icon | Sans perte | ✅ | Favicon de site |
Comparaison de chargement d'image : Data URL vs HTTP URL
L'image décodée peut être intégrée directement en HTML/CSS comme Data URL, comparée à une HTTP URL traditionnelle.
| Dimension | Data URL | HTTP URL |
|---|---|---|
| Nombre de requêtes HTTP | 0 | 1 |
| Réutilisation du cache | Difficile | Facile (CDN / navigateur) |
| Taille | Originale + 33% | Taille originale |
| Taille adaptée | < 10 KB | Toute taille |
| Transmission compressée | Non (déjà encodé) | gzip / Brotli |
| Restrictions CSP | Possible | Généralement autorisé |
| Stockage serveur | Inutile | Nécessaire |
| Accès hors ligne | ✅ (niveau fichier) | ❌ (cache nécessaire) |
Tableau de 5 erreurs courantes de conversion Base64 vers image
En cas d'erreur de décodage, identifiez rapidement le problème avec ce tableau.
| Symptôme d'erreur | Cause possible | Solution |
|---|---|---|
| Échec décodage : InvalidCharacterError | Contient espaces, sauts de ligne, caractères non Base64 | Prétraiter avec l'outil Base64 Clean |
| Image affichée vide | Type MIME incompatible avec les données d'origine | Choisir le bon MIME (données PNG → image/png) |
| Image affichée incomplète | Chaîne Base64 tronquée | Récupérer à nouveau la chaîne Base64 complète |
| Erreur de padding | Padding omis en Base64 URL-safe | Compléter les = avec l'outil Base64 Padding |
| Dépassement de mémoire navigateur | Image trop grande (> 50MB) | Décoder par blocs ou utiliser un outil de compression d'image |
Authoritative References
- Comparaison sécurisée
- Conversion Binaire
- Chiffre de César
- Code Morse
- Hexadécimal
- Vidéo vers Base64
- Base64 en Vidéo
- Image vers Base64
- Base64 vers image
- Texte vers Base64
- Base64 vers Texte
- Vérificateur de hash de fichier
- Fichier vers Base64
- Base64 vers Fichier
- Audio vers Base64
- Base64 vers Audio
- Chiffrer et déchiffrer AES
- Chiffrement DES
- Encodeur Décodeur Base32
- Encoder et decoder Base58
- Encodage Base64
- Décodage Base64
- Comparaison Base64
- Découpage Base64
- Fusion Base64 multi-lignes
- Formatage Base64
- Validation Base64
- Encodage Base64 par lots
- Décodage Base64 par Lots
- Nettoyage Base64
- Gestion du padding Base64
- Statistiques Base64
- Base64 vers HEX
- Convertisseur Base64 DataURL
- Convertisseur Base64-Hex
- Encodage Base85
- HMAC Générateur
- PBKDF2 Dérivation
- Hash MD5
- Hash SHA-256
- Hachage SHA1
- Hachage SHA512
- Décodeur, Vérificateur et Générateur JWT
- HTML Encode/Decode
- Unicode Escape
- Encodage URL
- Base64 URL-safe
- MIME Base64
- Obfuscation Java
- Obfuscation JavaScript
- Obfuscation PHP
- Obfuscation Python