Convertidor de Base64 a imagen
Convierta cadenas Base64 en imágenes con vista previa instantánea en vivo, descárguelas como PNG, JPG o WebP, o copie la imagen directamente a su portapapeles. Convierte en ambos sentidos: Base64 a imagen e imagen a Base64.
Pegar una cadena Base64 a la izquierda para mostrar la vista previa
¿Qué es la conversión de Base64 a imagen?
Base64 es un mecanismo de codificación estándar de binario a texto definido por RFC 4648. It takes binary data—such as image bytes representing PNG, JPEG, SVG, WebP, or GIF files—and translates it into a string of ASCII characters using a set of 64 characters (A-Z, a-z, 0-9, +, /, with = for padding).
La conversión Base64 a imagen decodifica esta representación de texto nuevamente en gráficos binarios que los navegadores, los sistemas operativos y los visores de imágenes pueden mostrar y guardar. Al incorporar imágenes como URI de datos Base64 directamente en HTML, CSS, JSON o correo electrónico mensajes, los desarrolladores pueden eliminar solicitudes HTTP externas y agrupar imágenes en línea
La estructura de un URI de datos de imagen
Una cadena de imagen Base64 estándar está formateada como URL de datos:
data:: el identificador de esquema de URIimage/png,image/jpeg,image/webp,image/svg+xml. — El tipo MIME que define el formato.;base64,— Indica que los datos de carga útil están codificados en Base64.<data>— Los bytes binarios codificados en Base64 del archivo de imagen.
Cómo convertir Base64 en una imagen en código
¿Necesita decodificar Base64 en una imagen en su aplicación? (Navegador)
Copiar
// Convert Base64 string to an HTMLImageElement
function base64ToImage(base64String) {
return new Promise((resolve, reject) => {
const img = new Image();
img.onload = () => resolve(img);
img.onerror = reject;
img.src = base64String.startsWith('data:')
? base64String
: `data:image/png;base64,${base64String}`;
});
}
// Convert Base64 string to a Blob for download or uploading
function base64ToBlob(base64String, mimeType = 'image/png') {
const raw = base64String.replace(/^data:[^;]+;base64,/, '');
const byteCharacters = atob(raw);
const byteNumbers = new Uint8Array(byteCharacters.length);
for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
return new Blob([byteNumbers], { type: mimeType });
}
3. Python 3
const fs = require('fs');
function saveBase64Image(base64String, outputPath) {
// Strip data URI prefix if present
const base64Data = base64String.replace(/^data:image\/\w+;base64,/, '');
const buffer = Buffer.from(base64Data, 'base64');
fs.writeFileSync(outputPath, buffer);
console.log(`Saved image to ${outputPath}`);
}
4. PHP
import base64
import re
def base64_to_image(b64_string, output_filename='output.png'):
# Remove data:image/...;base64, header if present
data = re.sub('^data:image/.+;base64,', '', b64_string)
image_bytes = base64.b64decode(data)
with open(output_filename, 'wb') as f:
f.write(image_bytes)
# Usage
base64_to_image("iVBORw0KGgo...", "photo.png")
Casos de uso comunes
<?php
function base64ToImage($base64String, $outputFile) {
$data = explode(',', $base64String);
$binaryData = base64_decode(end($data));
file_put_contents($outputFile, $binaryData);
}
?>
🚀 Rendimiento web y CSS crítico
Incrustar iconos pequeños y logotipos de presentación directamente en CSS evita solicitudes HTTP de ida y vuelta adicionales, lo que reduce el tiempo de la primera pintura de contenido (FCP)
✉️ Boletines informativos por correo electrónico HTML.
La incorporación de logotipos de marcas como URI de datos en línea evita que los clientes de correo electrónico bloqueen imágenes remotas o muestren cuadros de marcadores de posición de imágenes rotos.
📡 API REST y WebSockets
Al transmitir instantáneas de imágenes o firmas a través de cargas útiles JSON donde las cargas de varias partes son inconvenientes, Base64 es el estándar de la industria.
🎨 Exportaciones de lienzos y capturas de pantalla
HTML5 Canvas exporta dibujos y gráficos a través de
HTML5 Canvas exports drawings and chart graphics via canvas.toDataURL() as Base64 images for quick downloading or sharing.
¿Por qué una imagen Base64 es un 33 % más grande que el archivo binario original?
Base64 asigna cada 3 bytes (24 bits) de datos binarios sin procesar a 4 caracteres (32 bits) elegidos de su alfabeto de 64 caracteres ASCII. Esto representa una relación de expansión de 4:3, lo que hace que el tamaño del archivo de la representación Base64 sea aproximadamente un 33% mayor que la imagen binaria original.
¿Qué formatos de imagen son compatibles?
Nuestro conversor admite todos los formatos modernos de imágenes rasterizadas y vectoriales: PNG (
Our converter supports all modern raster and vector image formats: PNG (image/png), JPEG/JPG (image/jpeg), WebP (image/webp), GIF (image/gif), SVG (image/svg+xml), BMP (image/bmp), and ICO (image/x-icon).
Sí, absolutamente. El proceso de conversión se ejecuta estrictamente en su navegador web mediante las API de JavaScript del lado del cliente HTML5. Sus imágenes y cadenas codificadas en Base64 nunca se cargan, almacenan ni analizan en ningún servidor remoto.
Herramientas relacionadas