我正在尝试放置自定义图标,以使图钉的底部位于坐标上,如下所示:
[
我知道坐标(在本例中为Alexandria)是正确的,经测试here。
我这样称呼Marker构造函数:
var marker = new google.maps.Marker({
position: {lat: Number(markerData.geodata.lat), lng: Number(markerData.geodata.lng)},
title: '',
icon: {
url: _config.static.marker.default.normal.icon,
size: new google.maps.Size(3, 3, 'rem', 'rem'),
scaledSize: new google.maps.Size(3, 3, 'rem', 'rem'),
anchor: new google.maps.Point(0,0) <-- I think this is where I'm going wrong
},
type: t,
continent: markerData.continent,
country: markerData.country,
id: id,
labelTitle: markerData.name,
label: markerData.name.constructor,
labelClass: 'map-marker-label map-marker-label-village',
zIndex: 1
});
最佳答案
是的,您实际上发现了错误的地方,锚点是图像中经纬度坐标所在的点的坐标。
因此,如果您希望图钉的底部位于经/纬度坐标上,则应将锚点放置在图钉底部的像素的图像坐标X / Y处。
您的情况将是:
anchor: new google.maps.Point(27, 54)
因为你想要它在底部的中间