Procesar localmente evita subir, pero no vuelve determinista toda función SVG. Se acepta geometría y referencias locales; se rechaza contenido activo, remoto o costoso.

Renderizar como imagen, no como página

El XML aceptado se serializa en Blob y se decodifica como imagen. No se inserta en DOM ni usa iframe, object, embed o innerHTML; connect-src es none.

Los archivos incompatibles se rechazan con motivo

Scripts, eventos, CSS, animación, imágenes, URL, filtros y referencias inválidas producen errores estables. Nada se elimina en silencio.

Verifica el flujo receptor

Abre el PNG en el programa receptor y compara bordes, texto, colores y transparencia. Los motores pueden variar fuentes o color y PNG guarda píxeles fijos. Conserva el SVG como fuente editable.