Conversor de Archivo a Base64 (con soporte de data URI, en ambos sentidos)

Convierte cualquier archivo (imagen, PDF, etc.) a una cadena Base64 o data URI, o decodifica una cadena Base64 / data URI de vuelta a un archivo descargable. Todo se procesa en tu navegador; los archivos nunca se envían a un servidor.

Qué es la conversión de archivo a Base64

Base64 es un esquema de codificación que representa datos binarios (imágenes, PDF y cualquier otro tipo de archivo) usando solo 64 caracteres imprimibles: A-Z, a-z, 0-9, + y /. Los desarrolladores recurren a él siempre que necesitan incrustar el contenido de un archivo en un lugar que solo puede transportar texto de forma segura, como una carga JSON, una hoja de estilos CSS o HTML sin procesar. Al anteponer la información del tipo MIME a la cadena codificada, como en data:image/png;base64,..., se obtiene un data URI que el navegador puede interpretar directamente como una imagen sin necesidad de solicitar un archivo aparte.

Esta herramienta funciona en ambos sentidos: convierte cualquier archivo en una cadena Base64 o data URI, y decodifica una cadena Base64 o un data URI de vuelta al archivo original para descargarlo. Toda la conversión se ejecuta como JavaScript dentro de tu navegador mediante las API FileReader y Blob, por lo que el contenido del archivo nunca se transmite a un servidor externo. Esto la hace igual de útil para inspeccionar rápidamente un misterioso fragmento Base64 encontrado en el código fuente de otra persona que para manejar archivos sensibles que preferirías no subir a ningún sitio.

Cómo convertir archivos a Base64 y viceversa

  1. Elige el sentido de la conversión Selecciona "Archivo → Base64" o "Base64 → Archivo" según lo que quieras hacer.
  2. Aporta el archivo o el texto Base64 En el modo Archivo → Base64, arrastra o selecciona un archivo. En el modo Base64 → Archivo, pega una cadena Base64 o un data URI.
  3. Deja que la conversión se ejecute automáticamente En cuanto seleccionas o pegas la entrada, la conversión se realiza al instante dentro de tu navegador.
  4. Comprueba el tipo MIME detectado (Base64 → Archivo) Si la entrada no es un data URI completo, aparece un menú de tipo MIME; elige el formato que coincida con el archivo original.
  5. Copia el resultado o descarga el archivo Copia la cadena codificada o descarga el archivo reconstruido para terminar el proceso.

Consejos para aprovecharla mejor

  • El modo Archivo → Base64 acepta cualquier tipo de archivo (imágenes, PDF, audio, etc.) y te permite copiar tanto el data URI como la cadena Base64 simple.
  • En el modo Base64 → Archivo, pega un data URI completo que empiece por data: y el tipo MIME se detectará automáticamente. Para una cadena Base64 simple, selecciona el tipo MIME manualmente.
  • Toda la conversión se ejecuta enteramente en el JavaScript de tu navegador: el contenido del archivo o la cadena Base64 nunca se envía a un servidor, lo que la hace segura para archivos sensibles.
  • Para incrustar un pequeño icono directamente en CSS o HTML, pega la salida del data URI tal cual en background-image: url(...) o en el atributo src de una etiqueta <img>.
  • La codificación Base64 hace que el resultado sea aproximadamente un 33% más grande que el archivo original, por lo que convertir archivos muy grandes (decenas de megabytes o más) puede hacer que el navegador se sienta lento.

Casos de uso habituales

Incrustar un icono pequeño directamente en CSS

Convierte una imagen de icono en un data URI y colócala directamente en una propiedad background-image, evitando una solicitud HTTP adicional para un recurso diminuto.

Enviar un archivo dentro de una carga útil de API en JSON

Codifica una imagen o un adjunto como una cadena Base64 para que pueda viajar como un simple valor de cadena en el cuerpo de una solicitud o respuesta JSON.

Inspeccionar un fragmento Base64 encontrado en el código fuente

Pega una cadena Base64 desconocida detectada en código HTML o CSS para decodificarla de vuelta a un archivo visible y ver exactamente qué contiene.

Incrustar una imagen en línea en un correo HTML

Codifica en Base64 un logotipo o icono para incrustarlo directamente en el cuerpo de un correo HTML sin necesidad de un archivo adjunto aparte.

Glosario

Base64
Un esquema de codificación que representa datos binarios usando solo 64 caracteres ASCII imprimibles: A-Z, a-z, 0-9, + y /. No es cifrado, solo una forma de hacer que bytes arbitrarios se puedan transportar de forma segura como texto.
Data URI
Un formato que incrusta el contenido de un archivo codificado en Base64 directamente dentro de una URL. Como también incluye información del tipo MIME, se puede usar directamente como origen de una imagen o como fondo en CSS.
Tipo MIME
Un identificador que describe el formato de un archivo, escrito como "tipo/subtipo" (por ejemplo, image/png o application/pdf). Los navegadores lo usan para decidir cómo tratar un archivo determinado.
Codificación
El proceso de convertir datos de una representación a otra. La codificación Base64, en concreto, convierte datos binarios en una cadena de texto imprimible.
Procesamiento en el cliente
Tratar los datos por completo dentro del navegador del usuario en lugar de enviarlos a un servidor. Toda conversión que realiza esta herramienta ocurre en el cliente, así que los archivos nunca salen de tu dispositivo.
Sobrecarga del tamaño de la carga útil
El aumento de aproximadamente un 33% en el tamaño de los datos que provoca la codificación Base64. Es una consecuencia inevitable de reempaquetar datos binarios de 8 bits en caracteres de 6 bits.

Preguntas frecuentes

Base64 es un esquema de codificación que representa datos binarios (imágenes, audio, ejecutables o cualquier otro formato) usando solo 64 caracteres ASCII imprimibles: A-Z, a-z, 0-9, + y /. No es cifrado: es simplemente una forma de representar bytes arbitrarios como texto seguro e imprimible.

Un data URI incrusta el contenido de un archivo directamente dentro de una URL como una cadena codificada en Base64, como data:image/png;base64,iVBOR.... Como también incluye el tipo MIME, puedes usarlo directamente en el atributo src de una etiqueta <img> o en un background-image de CSS para mostrar la imagen.

No. La conversión de esta herramienta (codificación y decodificación mediante FileReader y Blob) se ejecuta por completo como JavaScript dentro de tu navegador. Ni el contenido del archivo ni la cadena Base64 resultante se envían nunca a un servidor.

Sí. Si el texto pegado no es un data URI completo que empiece por data:, aparece un menú desplegable de tipo MIME; elige manualmente el formato original del archivo (imagen, PDF, texto, etc.) antes de descargarlo.

Base64 reempaqueta datos binarios de 8 bits en caracteres de 6 bits, por lo que el resultado codificado ocupa aproximadamente 4/3 del tamaño original, es decir, un aumento de alrededor del 33%. Esta sobrecarga es una propiedad inevitable de cómo funciona la codificación Base64.
Tool-kun

A propósito — Por qué Base64 hace que los archivos sean un 33% más grandes

La codificación Base64 existe porque muchos canales de transporte (el correo electrónico, JSON, las URL) solo pueden transportar de forma segura texto ASCII imprimible. Enviar datos binarios arbitrarios (como una imagen o un ejecutable) tal cual corre el riesgo de corrupción por caracteres de control perdidos, así que se ideó Base64 para representar cualquier contenido binario usando solo 64 caracteres imprimibles: A-Z, a-z, 0-9, + y /.

Base64 divide 3 bytes (24 bits) de datos binarios en cuatro fragmentos de 6 bits y asigna cada fragmento a un carácter Base64. Reempaquetar datos binarios de 8 bits en caracteres de 6 bits hace que el resultado codificado termine ocupando aproximadamente 4/3 del tamaño original, es decir, alrededor de un 33% más grande. Ese aumento de tamaño es el precio que se paga por un transporte seguro como texto.

Este mismo truco se aprovecha en los data URI, que incrustan imágenes pequeñas directamente en HTML o CSS como data:image/png;base64,.... Hacerlo evita una solicitud HTTP adicional para recursos diminutos como los iconos, lo que puede acelerar la carga de la página. Sin embargo, la sobrecarga de tamaño de aproximadamente el 33% y la pérdida del almacenamiento en caché del navegador lo hacen poco adecuado para archivos de imagen grandes.