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.