10

我已经更改了我marker在 Google 地图上使用的图像。新图像比旧图像宽得多,我注意到标记与latand对齐,lng因此标记位于latand上方的水平中点lng。这不是我想要的,我想让latandlng与左侧的标记对齐 - 我想marker从默认位置向右偏移大约 80px。

4

2 回答 2

9

试穿这个尺寸。

var markerImage = new google.maps.MarkerImage('/img/icon/here.png',
    new google.maps.Size(80, 80), //size
    new google.maps.Point(0, 0), //origin point
    new google.maps.Point(0, 80)); // offset point
marker[stamp] = new google.maps.Marker({
    position: loc, // loc is a variable with my lngLat object
    title: params.name,
    map: window.gMaps[params.map],
    icon: markerImage
});
于 2012-10-11T18:41:40.463 回答
-1

您想要MarkerImage的“锚”属性。请注意,在构造函数调用中,origin 属性位于锚点之前。如果你不使用精灵,你可以只为可选参数发送 null 。

如果您的标记是 80x60,并且您希望锚点位于左侧中间,请按如下方式创建:

var markerImage = new google.maps.MarkerImage('customIcon.png', new google.maps.Size(80, 60), null, new google.maps.Point(0, 30));

另请参阅Google 的示例

于 2011-09-22T14:09:37.927 回答