可以从SVG创建Leaflet图标:
var icon = "<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='10' height='10'><path stroke='red' stroke-width='2' fill='none' d='M 0,0 L 10,10 M 10,0 L 0,10 Z'/></svg>";
var svgURL = "data:image/svg+xml;base64," + btoa(icon);
var mySVGIcon = L.icon({ iconUrl: svgURL });
但是在尝试将图像添加到SVG时(使用绝对URL,但似乎它也不能使用相对URL),如下所示:
var icon = "<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='10' height='10'><img src='http://www.gravatar.com/avatar/abc'/></svg>";
图像未被发送。
更新
也不使用有效的SVG属性:
var icon = "<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='10' height='10'><image xlink:href='http://www.gravatar.com/avatar/abc'/></svg>";