在google地图中,标记图像的中心和底部通常是要标记的点的最新lng。
假设我的标记图标是一个圆,我希望它的中心在给定点的纬度上……
代码:
var image_hotspot = 'img/icons/bank_euro.png';
var marker = new google.maps.Marker({
map: map,
position: placeLoc,
icon: image_hotspot
});
发布于 2012-08-23 22:07:21
您需要创建一个MarkerImage
对象,例如:
var markerImage = new google.maps.MarkerImage('img/icons/bank_euro.png',
new google.maps.Size(30, 30),
new google.maps.Point(0, 0),
new google.maps.Point(15, 15));
其中第一个参数是图像url,第二个参数是图像大小,第三个参数是图像的原点,第四个参数是图像上标记应该指向的位置。如果您的标记是一个圆,则将第四个参数设置为图像的中心。并将markerImage
传递给图标属性来创建您的标记:
var marker = new google.maps.Marker({
map: map,
position: placeLoc,
icon: markerImage
});
发布于 2015-04-04 00:48:08
从文档中:
将MarkerImage对象转换为类型图标
var image = new google.maps.MarkerImage(
place.icon,
new google.maps.Size(71, 71),
new google.maps.Point(0, 0),
new google.maps.Point(17, 34),
new google.maps.Size(25, 25));
变成了
var image = {
url: place.icon,
size: new google.maps.Size(71, 71),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(17, 34),
scaledSize: new google.maps.Size(25, 25)
};
https://developers.google.com/maps/documentation/javascript/markers
发布于 2017-09-20 16:30:22
使用谷歌地图的v3,您可以/应该使用:
new maps.Marker({
...
icon: {
url: '.../myimage.png',
scaledSize: new maps.Size(60, 30),
anchor: new maps.Point(30, 30),
},
});
https://developers.google.com/maps/documentation/javascript/reference#Icon
https://stackoverflow.com/questions/12093327
复制相似问题