ImageCompress convierte KB decimales a bytes, prueba calidades enteras acotadas y conserva la mayor dentro del presupuesto. No añade relleno ni reduce dimensiones a escondidas. El resultado es evidencia del navegador actual.

Usa el fallo como evidencia

Si calidad 10 supera el presupuesto, devuelve ese Blob con TARGET_NOT_MET. Una imagen grande puede tener demasiados píxeles. Aumenta el límite o reduce dimensiones deliberadamente en ImageResize.

Revisa la salida real

La vista previa y la descarga apuntan al mismo Blob creado por el navegador; revisa bordes, gradientes, texto y transparencia antes de usarlo. Los bytes son exactos para ese Blob, pero otro navegador o códec puede producir otros. Conserva el original hasta que el destino acepte el resultado.

Revisa la salida real

La vista previa y la descarga apuntan al mismo Blob creado por el navegador; revisa bordes, gradientes, texto y transparencia antes de usarlo. Los bytes son exactos para ese Blob, pero otro navegador o códec puede producir otros. Conserva el original hasta que el destino acepte el resultado.