Imagen a Base64 es una técnica que codifica datos binarios de imagen como una cadena de texto ASCII. Base64 usa 64 caracteres imprimibles (A-Z, a-z, 0-9, +, /) para representar datos binarios, convierte cada 3 bytes en 4 caracteres Base64 y añade = como relleno final. Todo el proceso sigue el estándar RFC 4648.
**Principio de codificación**: Base64 divide cada 3 bytes (24 bits) en cuatro grupos de 6 bits, cada uno asociado a un carácter del alfabeto Base64. Si el número de bytes no es múltiplo de 3, se añaden 1-2 caracteres = de relleno. Por eso el tamaño aumenta aproximadamente un 33% (4/3 ≈ 1.33).
**Optimización con Web Worker**: esta herramienta usa Web Workers para ejecutar la codificación en un hilo del navegador independiente del hilo principal. ArrayBuffer.transfer() permite transferir datos al Worker sin copias y evita bloqueos. Incluso con imágenes de varios MB, la UI se mantiene fluida y muestra el progreso en tiempo real.
**Privacidad y seguridad**: a diferencia de herramientas que requieren subir imágenes a un servidor, esta herramienta se ejecuta por completo en el navegador. Los datos de imagen no pasan por servidores de terceros, algo especialmente importante con imágenes sensibles como identificaciones o contratos.
**Casos de uso**: las imágenes Base64 se usan a menudo en CSS Sprites (reducir solicitudes HTTP), plantillas de correo HTML (evitar bloqueos de imágenes por clientes de correo), transmisión API de datos binarios y extensiones de navegador o apps de un solo archivo cuando no se pueden referenciar recursos externos.