El Compresor de imágenes lee un archivo de imagen local, lo re-codifica como JPEG en un lienzo y muestra el cambio de tamaño antes de que descargues nada. Eliges el archivo con el selector, la página lo dibuja en sus dimensiones originales y el lienzo lo re-codifica con la calidad del deslizador, que por defecto está en 70%. La lectura imprime después el tamaño original, el tamaño comprimido estimado y el porcentaje, por ejemplo 2,400,000B → 833,351B (-65%), y una vista previa en paralelo muestra el original junto al resultado. Todo es una llamada de lienzo en el navegador: los bytes del archivo nunca salen del dispositivo y no hay subida en ningún punto.
Qué recibe la herramienta y qué da
La entrada es un único campo de archivo que acepta archivos de imagen y no pide nada más. El tamaño original es el número exacto de bytes del archivo en disco, así que la mitad izquierda de la lectura es precisa. La salida siempre es un JPEG: el lienzo entrega sus píxeles al codificador JPEG del navegador, el formato de salida está fijo y no es seleccionable, y el ancho y la altura se quedan exactamente como venían. El único control es el deslizador de calidad, que va de 10 a 95 en pasos de 5, es decir 18 posiciones, y moverlo re-codifica al instante el original conservado, de modo que la lectura y la vista previa se actualizan en vivo. Cuando el tamaño te convence, el botón de descarga escribe el resultado en tu disco como compressed.jpg; el archivo que guardas es la verdad para el número real de bytes.
Por qué la salida siempre es JPEG
La re-codificación es una llamada al lienzo cuyo tipo de salida viene fijado a JPEG, así que un PNG entra y un JPEG sale, un WebP entra y un JPEG sale, y un GIF entra y conserva solo su primer fotograma, porque el elemento de imagen solo decodifica el primer fotograma de un archivo animado. El formato fijo tiene dos consecuencias. Primera, el JPEG no tiene canal alfa, así que un PNG transparente no se mantiene transparente: los píxeles transparentes se componen sobre negro antes de codificar, y el archivo que descargas tiene negro donde la entrada tenía transparencia. Segunda, la herramienta usa el propio decodificador del navegador sin respaldo, así que un formato que el navegador no sabe decodificar, como el HEIC en la mayoría de plataformas, simplemente nunca termina de decodificarse y la página no muestra nada para él.
Cómo se lee el tamaño
El tamaño comprimido es una estimación, y deliberadamente simple. El lienzo devuelve una URL de datos, un prefijo de 23 caracteres, data:image/jpeg;base64,, seguido de base64, y la página toma la longitud de la cadena completa y la multiplica por tres cuartos, porque el base64 usa cuatro caracteres por cada tres bytes. Esa estimación supera el número real de bytes solo por el prefijo, lo que sale a 17 a 19 bytes de más: un JPEG de 1,000,000 de bytes se lee como 1,000,019B y uno de 999,999 como 1,000,016B. En una pasada completa, un archivo de 2,400,000B cuyo resultado del codificador es de 833,333 bytes imprime 2,400,000B → 833,351B (-65%); el porcentaje se redondea, así que el número mostrado y la aritmética exacta pueden diferir en un punto.
Cuando el archivo se hace más grande
El porcentaje de ahorro es el redondeo de uno menos el tamaño comprimido entre el original, por cien, y un resultado negativo se muestra con signo más, así que un archivo que creció se reporta como, por ejemplo, 45,000B → 47,018B (+4%). Eso pasa con imágenes pequeñas, donde manda la carga fija del codificador, con un JPEG que ya estaba comprimido a una calidad igual o menor que la elegida, y siempre que el deslizador esté por encima de la calidad a la que se guardó el original. La dirección no es un fallo: en 10 la salida es la más pequeña que será y en 95 la más grande, así que si la lectura sube al subir la calidad, el original ya era más esbelto de lo que el codificador quiere hacer.
Adónde van los píxeles
El archivo se lee con FileReader como una URL de datos en la página, y el único cálculo es el dibujo en lienzo más la codificación JPEG, así que los bytes nunca salen del dispositivo y no hay ninguna petición de red en ningún punto. Tampoco hay persistencia: la página guarda la URL de datos solo mientras está abierta, no hay historial ni caché, y cerrar o recargar la pestaña descarta la imagen y el resultado. El único artefacto que puede salir del dispositivo es el compressed.jpg que eliges descargar, y lo eliges tú.
Qué no es
La herramienta mantiene las dimensiones de la entrada tal cual, así que no es un redimensionador; cambiar el tamaño en píxeles es lo que hace el Redimensionador de Imágenes. Tampoco es un convertidor de formatos, porque la salida viene fija a JPEG; elegir el formato de salida es tarea del Convertidor de Imágenes. No lee ni muestra los metadatos del archivo, que muestra el Visor de Información de Imagen, y no recorta el encuadre; para eso, mira la guía de recorte.