百度地圖自定義座標標識覆蓋物,隨地圖縮放偏移解決辦法
阿新 • • 發佈:2018-11-20
百度地圖在新增自定義標註的時候可能會遇見座標標識,隨著地圖縮放位置產生偏移,我折騰了一個上午,記下這篇。
在此之前,請參考文章:
http://www.cnblogs.com/jz1108/archive/2011/09/15/2152122.html
但是注意:
var icon = new BMap.Icon('pin.png', new BMap.Size(20, 32), {
anchor: new BMap.Size(10, 30)
});
第一步:
new BMap.Size(20, 32)
大概設定成圖片的尺寸大小,但是最好多出2到3個畫素(px),如圖片是20x30,那麼你可以設定成new BMap.Sie(22,32)
第二步:
anchor: new BMap.Size(10, 30)
這裡有兩個數字10,30分別對應圖示的一半寬度和高度
但是上面兩步都設定好了,有時候你會發現自己新增的標註也看不見了,這很尷尬,我就在這折騰了半天,大家可以吧第一步寬和高的值擴大(稍微大一點),按F12進行檢視,你會發現新增的標註圖片偏移在右下角。那麼就可以做最後一步了。
最後一步:
var icon = new BMap.Icon('pin.png', new BMap.Size(20, 32), { anchor: new BMap.Size(10, 30), imageOffset: new BMap.Size(0-20, 0 - 17) });
imageOffset: new BMap.Size(0-20, 0 - 17)
注意這句指令碼,多少量大家可以自己除錯。
做好了這一步,那麼問題也就解決了。