我尝试在Openlayers-3中使用svg图标作为标记。这是我的代码。
var svg = '<?xml version="1.0"?>'
+ '<svg viewBox="0 0 120 120" version="1.1" xmlns="http://www.w3.org/2000/svg">'
+ '<circle cx="60" cy="60" r="60"/>'
+ '</svg>';
var style = new ol.style.Style({
image: new ol.style.Icon({
opacity: 1,
src: 'data:image/svg+xml;base64,' + btoa(svg)
})
});
但是我的SVG图像被截断了,如下图所示。(图标应该是一个圆形)
window.btoa
将SVG转换为Base64格式,然后作为“data:image/svg+xml;base64,”的内容之后跟随着你的Base64编码图像来包含它。 - Husky