地图标注是将空间位置点与该点的信息相关联,通过图标、文字等形式把点相关的信息展现到地图上。
随便打开一个电子地图就可以看到许多标注:
可以说地图没有了标注就丧失了一半信息,甚至是全部信息!
地图标注的表现形式多样,包括简单的图片标注,文字标注,图文标注等。
OpenLayers可以使用ol.Feature类或者ol.Overlay类来实现标注。
一、使用ol.Feature类实现标注
1.1、使用ol.Feature类实现文字标注
使用ol.style.Style样式类为使用ol.Feature类创建的要素提供样式,这样就能构建出文字样式了。
示例一:
<!DOCTYPE html>
通常从WebGIS服务器端传到前端的要素数据(GeoJSON,TopoJSON等),都包含要素的信息,比如地名,街道名等,可以读取这些信息然后作为文字标注渲染到地图上。
示例二:街道标注
<!DOCTYPE html>
效果:
关于要素文字标注的更多信息可以参考这个官方示例:
Vector Labelsopenlayers.org1.2、使用ol.Feature类实现图片标注
使用ol.style.Icon类可以为使用ol.Feature类创建的要素提供图片样式,这样就构建了图片标注。
示例:
<!DOCTYPE html>
效果:
二、使用ol.Overlay实现标注
ol.Overlay类主要用于实现弹窗功能,但是它也能用于实现标注。
示例:
<!DOCTYPE html>
效果:
因为添加了超链接,所以点击标注就能弹出链接页!