Html SVG数据URI不';t在img标记中呈现

Html SVG数据URI不';t在img标记中呈现,html,image,svg,base64,data-uri,Html,Image,Svg,Base64,Data Uri,我有一个数据URI Base64编码字符串,我是从剑道映射的方法中获得的 如果我将Base64字符串放入SVG解码器,然后将生成的SVG保存到一个文件中,并在浏览器中打开它,则图像显示良好,但如果我将其放入标记中,则不会显示任何内容 Base64字符串相当大,因此我将其放在JSFIDLE中进行演示,而不是粘贴在这里 有人能告诉你为什么没有加载图像吗?你的数据URL包含很多对外部图像的引用,例如 <image preserveAspectRatio="none" x="310.15625"

我有一个数据URI Base64编码字符串,我是从剑道映射的方法中获得的

如果我将Base64字符串放入SVG解码器,然后将生成的SVG保存到一个文件中,并在浏览器中打开它,则图像显示良好,但如果我将其放入
标记中,则不会显示任何内容

Base64字符串相当大,因此我将其放在JSFIDLE中进行演示,而不是粘贴在这里


有人能告诉你为什么没有加载图像吗?

你的数据URL包含很多对外部图像的引用,例如

<image preserveAspectRatio="none" x="310.15625" y="281" width="256px" height="256px" xlink:href="http://ecn.t0.tiles.virtualearth.net/tiles/r311213001300102.jpeg?g=5171&amp;mkt=en-US&amp;shading=hill" clip-path="url(#kdef7)" />


作为图像使用时,在您的情况下,通过图像标记,SVG必须由单个文件组成,因此您必须将这些图像中的每一个编码为数据URL,然后一旦编码完成,将整个SVG文件重新编码为数据URL。

您的意思是对SVG中包含的每一个图像进行编码吗?嗯,好的。我想这就是为什么该方法给出的数据URI更长的原因,它一定是为我这样做的。