目前我使用StyledMarker图标(默认气泡图标+自定义颜色),但我看到有些网站使用更紧凑的“点”(点标记图片)。我的问题是是否可以使用StyledMarker替换默认气泡标记为点标记?如果不行,如何解决这个问题(解决方案必须允许动态着色)?
目前我使用StyledMarker图标(默认气泡图标+自定义颜色),但我看到有些网站使用更紧凑的“点”(点标记图片)。我的问题是是否可以使用StyledMarker替换默认气泡标记为点标记?如果不行,如何解决这个问题(解决方案必须允许动态着色)?
new google.maps.Marker({
map: map,
position: map.getCenter(),
icon: {
path: google.maps.SymbolPath.CIRCLE,
fillColor: '#00F',
fillOpacity: 0.6,
strokeColor: '#00A',
strokeOpacity: 0.9,
strokeWeight: 1,
scale: 7
}
});
您可以调整每个属性以达到所需的外观。
如果您想要更加复杂的东西,我制作了(免责声明:这是我做的)一款使用图标字体(如font-awesome或material icons)来渲染图像的库(使用辅助画布,然后获取其数据URL)。
它基本上是一个图像工厂,您可以将其用作
new google.maps.Marker({
map: map,
position: map.getCenter(),
icon: MarkerFactory.autoIcon({
label: 'f1b9',
font: 'FontAwesome',
color: '#CC0000',
fontsize: 20
})
});
您甚至可以省略font
属性,它会呈现您传递的文字字面意思。有时我用它来列举标记。
StyledMarker使用了已经废弃的图表图片 API做它的图标。看起来这个 API 没有“麻点”(但是可以自己看看)。总之,从快速浏览来看,它原生只支持这两个:
它是开源的,因此你可以修改它以实现自己的需求,但你可能需要使用“普通”自定义标记来获取“麻点”。