首页 > 解决方案 > 如何在 IE11 中将 svg 转换为图像

问题描述

我有一个svg元素,我必须将其转换为image.

var svg = this.panelContent.nativeElement.querySelector('svg');
var img = new Image();
// get svg data
var xml = new XMLSerializer().serializeToString(svg);

// make it base64
var svg64 = btoa(xml);
var b64Start = 'data:image/svg+xml;base64,';

// prepend a "header"
var image64 = b64Start + svg64;
// set it as the source of the img element
img.src = image64;

这在 chrome 浏览器中运行良好,但在IE11我收到以下错误:

XML5661:非默认命名空间声明不得有空 URI。

我为此花了超过 1 天的时间,但我还没有找到一个解决方案。

谢谢!

标签: javascripthtmlimagesvgbase64

解决方案


推荐阅读