Pau*_*per 3 javascript base64 svg canvas image
我无法获得base64数据URI和SVG作为图像显示.
我尝试了一个<img>和一个,<canvas>并且没有一个SVG出现.
var url = 'data:image/svg+xml;base64,' + btoa('<svg height="100" width="100"><circle cx="50" cy="50" r="40" stroke="black" stroke-width="3" fill="red"/></svg>');
document.getElementById('image').src = url;
var context = document.getElementById('canvas').getContext('2d');
var image = new Image();
image.src = url;
context.drawImage(image, 0, 0);Run Code Online (Sandbox Code Playgroud)
canvas, img {
border: 1px solid black;
}Run Code Online (Sandbox Code Playgroud)
<img id="image" width="200" height="200">
<canvas id="canvas" width="200" height="200"></canvas>Run Code Online (Sandbox Code Playgroud)
在Chrome和Firefox中测试过.
SVG出现的不是什么?
Kin*_*ing 16
当像这样嵌入svg时,记得设置xmlns为svg:
var url = 'data:image/svg+xml;base64,' +
btoa('<svg xmlns="http://www.w3.org/2000/svg" height="100" width="100"><circle cx="50" cy="50" r="40" stroke="black" stroke-width="3" fill="red"/></svg>');
Run Code Online (Sandbox Code Playgroud)
如果xlinksvg元素中使用了任何前缀,则还应添加xmlns:xlink="http://www.w3.org/1999/xlink"