我有一个带有几种不同类型图标的Google地图。我的每个图标都有一个阴影。如何调整标记阴影与标记的偏移量?
在构建每个标记的循环中,我得到了:
var icon = customIcons[type];
var marker = new google.maps.Marker({
map: map,
position: point,
icon: icon.icon,
shadow: icon.shadow
});
图标按类型设置。
var customIcons = {
Football: {
icon: 'http://path-to-image1.png',
shadow: 'http://path-to-shadow-image1.png'
},
Lacrosse: {
icon: 'http://path-to-image2.png',
shadow: 'http://path-to-shadow-image2.png'
}
};
在这个tutorial中,他们为单个图标设置大小和偏移量,如下所示:
var image = new google.maps.MarkerImage('images/beachflag.png',
// This marker is 20 pixels wide by 32 pixels tall.
new google.maps.Size(20, 32),
// The origin for this image is 0,0.
new google.maps.Point(0,0),
// The anchor for this image is the base of the flagpole at 0,32.
new google.maps.Point(0, 32));
var shadow = new google.maps.MarkerImage('images/beachflag_shadow.png',
// The shadow image is larger in the horizontal dimension
// while the position and offset are the same as for the main image.
new google.maps.Size(37, 32),
new google.maps.Point(0,0),
new google.maps.Point(0, 32));
在我的情况下,我有多个图标,它们被设置在一个对象中。如何将大小和偏移量添加到var customIcons
?
谢谢。
答案 0 :(得分:3)
根据这篇Google Map API v3 documentation:
注意:Google Maps JavaScript API 3.14版中删除了标记阴影。任何 以编程方式指定的阴影将被忽略。
答案 1 :(得分:0)
请参阅:https://developers.google.com/maps/documentation/javascript/reference#MarkerImage
阴影图像是MarkerImage对象。因此,它的构造函数可以使用anchor
参数(Point对象)来告诉如何相对于标记坐标定位阴影。
默认情况下,MarkerImage的底部中心点在标记坐标上对齐。如果您的阴影图像与标记图像的大小不同(例如,如果它更宽),则必须调整阴影的位置。