是否有可能在谷歌地图标记中使用SVG块内的.png图像?我想要一张图片,并用SVG滤镜以不同的颜色绘制,然后用作谷歌标记。谷歌地图标记为SVG(图像PNG标记内)
我想使用的图片不带过滤器至少现在:
var svg = '<?xml version="1.0"?>' +
'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="200px" width="200px" viewBox="0 0 200 200">' +
'<image width="200" height="200" preserveAspectRatio="xMinYMin slice" xlink:href="{link.to.png.image}"/>' +
'</svg>';
var icon = {
url: 'data:image/svg+xml;charset=UTF-8,' + svg,
scaledSize: iconSize // scaled size
};
而且如果我将采取SVG代码,并尝试只通过浏览器来使用它,它呈现OK
<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="200px" width="200px" viewBox="0 0 200 200">
<image width="200" height="200" preserveAspectRatio="xMinYMin slice" xlink:href="{link.to.png.image}"/>
</svg>
但它试图与谷歌地图使用时什么也没有显示
可能这个转换为数据uri是由一些工具从框(Javascript或不喜欢这样)? –
@ A.Khvorov:是的,但这是另一个问题。你可以看看[那里](http://stackoverflow.com/questions/934012/get-image-data-in-javascript),并按照接受的答案中的建议尝试Kaiido的代码,或者从MuniR得到答案,如果你在你的html中不需要'img'标签。 – GeH
非常感谢! –