百度地图js API icon大小问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度地图js API icon大小问题相关的知识,希望对你有一定的参考价值。

我添加icon的时候出现了问题,直接上图

或者就是marker特别的小,像这样

我设想中的效果应该是这样

我想请问一下是哪里出的错误。我的代码是这样的
var myIcon = new BMap.Icon("http://api.map.baidu.com/img/markers.png", new BMap.Size(23, 25), offset: new BMap.Size(10, 25), // 指定定位位置 imageOffset: new BMap.Size(0, -250-i*25) // 设置图片偏移 ); marker= new BMap.Marker(pointArray[i],icon: myIcon);
相同的代码在width hight都是100%显示就是正常的,在high为600px,width=80%的情况的出现了上面的错误

参考技术A 我最近也一直在做百度地图开发,
width height是指的放地图的div(api示例中的allmap)么?
要不你把图标拿到本地,再自定义icon试试。追问

是的,在我这儿,错误时候和正确的时候代码几乎就是一样的,差别就在于放地图的div大小

追答

你上下几幅图的图标不是同一种,会不会上面那图的图标(含有字母的)更小?

追问

同一个,图片你可以看到,我写在代码里了var myIcon = new BMap.Icon("http://api.map.baidu.com/img/markers.png", new BMap.Size(23, 25),

追答

我在我的项目上测试是不会出现这个问题的。

    你那有没有设置参数将图标的大小与div的宽度进行了绑定;

    你是不是在new了map并放置了图标等一系列操作之后用js进行的高宽度变化。


追问

应该是没有进行绑定,请问怎么绑定?

本回答被提问者采纳

百度地图 JS API Marker自定义图标

一、自定义图标的Marker生成

var iguIcon__ = new BMapGL.Icon('./marker.png', new BMapGL.Size(20, 20));
    var point_temp__ = new BMapGL.Point(116.404, 39.915);
    var marker_temp__ = new BMapGL.Marker(point_temp__, icon: iguIcon__);//, icon: iguIcon__
    map.addOverlay(marker_temp__);

二、动态修改图标

marker_temp__.setIcon(new BMapGL.Icon("。/marke_2.png", new BMapGL.Size(20, 20))) ;

三、图标

 

 

 

 

 

以上是关于百度地图js API icon大小问题的主要内容,如果未能解决你的问题,请参考以下文章

百度地图 JS API Marker自定义图标

百度地图api设置点的图标不显示

百度地图API 自定义标注图标

解决页面引用百度地图API设置点的logo不显示问题

开发百度地图,使用百度api时怎么自定义哪气泡

百度地图API在vue-cli中路径错误的问题