自定义标注:
var map = new BMap.Map("container");
var point = new BMap.Point(116.404,39.415);
//Attention following Size(50,250)
var myIcon = new BMap.Icon("markers.jpg",new BMap.Size(50,250));
var marker = new BMap.Marker(point,{icon:myIcon});
最终显示效果如图:
Problem:
按照官网给出的实例,进行填充图片时,图片显示不出来,我特地去查了一下文件路径的问题,最终发现问题不在这里。
网上也有很多人关于原生标注显示不出来的问题,更多的是将图片路径改为远程路径(在服务器端的链接地址),这种方式显然不适合我这种自定义方式的本地图片。
通过查文档发现(new BMap.Icon(String url,Size size)中的)Size是一个矩形区域。

而刚开始我自己选的图片是800*800像素的图片,在很小的区域中只能显示边缘白色,且很小。
知道这个原因后我就把图片缩到很小,并且把Size的区域放大。使得图片的高度为矩形区域的1/2,这样,我的冰淇淋的尖就可以指向天安门了。
后来看到图片可以通过imageoffset设置偏移,这个事就更容易解决了。。。
网友评论