【高德地图API】如何设置Icon的imageSize? | 您所在的位置:网站首页 › 高德地图如何设置图标显示 › 【高德地图API】如何设置Icon的imageSize? |
在地图开发中,我们需要把标注换成各种各样的图片,以突显个性。
在高分辨率的手机下,图片尺寸需要压缩至一半,以保持图片清晰。让我们来看一看,应该如何实现。
有开发者为了改变图片的尺寸,直接写成了 imageSize: (64, 64)或者 imageSize: "64px 64px"
是否有问题呢?
首先来看一下imageSize的类参考,看到类型是Size。
Size是高德API自定义的类型,并不是num。所以,直接写数字的做法是不对的。
那么正确的写法,应该是: imageSize: new AMap.Size(64,64)
在高分辨率显示器上,应该把尺寸压缩一半。比如图片尺寸是128*128,那么imageSize需要把图片压缩一半,应为64*64。代码如下: //添加点标记,并使用自己的icon new AMap.Marker({ map: map, position: [116.47395,39.986058], icon: new AMap.Icon({ image: "marker128.png", size: new AMap.Size(128, 128), //图标大小 imageSize: new AMap.Size(64,64) }) });
demo地址:http://zhaoziang.com/amap/imageSize.htm
全部示例代码: 自定义图标 //初始化地图对象,加载地图 var map = new AMap.Map("container", { resizeEnable: true, zoom:11 }); //添加点标记,并使用自己的icon new AMap.Marker({ map: map, position: [116.47395,39.986058], icon: new AMap.Icon({ image: "marker128.png", size: new AMap.Size(128, 128), //图标大小 imageSize: new AMap.Size(64,64) }) }); //添加点标记,并使用自己的icon new AMap.Marker({ map: map, position: [116.321514,39.91289], icon: new AMap.Icon({ image: "marker128.png", size: new AMap.Size(128, 128), //图标大小 imageSize: new AMap.Size(128,128) }) });
|
CopyRight 2018-2019 实验室设备网 版权所有 |