0

我正在尝试在谷歌地图上放置自定义标记。我要使用的图标是 png 文件,并且根据放置在地图上的点的类型而有所不同。点的位置和标记的 png 文件的 url 都是从 SQL 数据库中提取的。

我正在使用的代码如下

var mapOptions = {
    center: new google.maps.LatLng(markers[0].lat, markers[0].lon),
    zoom: 7,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    //  marker:true
};
var infoWindow = new google.maps.InfoWindow();

var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
for (i = 0; i < markers.length; i++) {
    var data = markers[i]
    var myLatlng = new google.maps.LatLng(data.lat, data.lon);
    var marker = new google.maps.Marker({
        position: myLatlng,
        map: map,
        title: data.venue,
        icon: data.image
    });

运行此程序时,我的地图上出现了非常大的标记,每个标记都是正确的,但它们太大了,看起来像一团乱麻。

关于如何控制图标大小的任何建议?

4

1 回答 1

2

您可以将 google.maps.Icon 指定为 MarkerOptions,例如

var marker = new google.maps.Marker({
    position: myLatlng,
    map: map,
    title: data.venue,
    icon: {
        url: data.image,
        scaledSize: new google.maps.Size(32, 32)
    }
});
于 2013-10-18T19:43:46.053 回答