openlayers 各版本特性
从20年接手的项目,由于项目需要,当时只能内网开发,客户对地图有很多定制化功能,又要求免费,对比了几家地图引擎,最终还是选择了使用openlayers;具体的各引擎的区别这里就不赘述。 期间陆陆续续经历几个项目,最初的ol5现已更新到ol9 ,趁着有空对各版本的特性做一下整理说明,方便后续项目对ol版本对比和选择。
版本 | 特性 |
2.x | 这是OpenLayers最早发布的版本。它提供了基本的地图显示和交互功能,包括多种地图投影支持、矢量和栅格图层、控件和工具等。2.x的版本在稳定性和功能上有所改进。 |
3.x | 这个版本引入了更多的功能和改进,包括更好的地图投影支持、多种渲染器选项、更好的矢量图层支持、更灵活的样式功能等。3.x还引入了模块化的架构,使开发和扩展更容易。 |
4.x | 这个版本加强了与矢量数据的交互,引入了新的矢量图层类型,如矢量瓦片图层和矢量网格图层。它还引入了更多的图层样式选项,支持复杂的符号化和标签渲染。 |
5.x | 这个版本引入了更多的渲染器选项和改进,包括WebGL渲染器和Canvas渲染器。它还增加了更多的图层类型支持,如WMS图层、WFS图层和XYZ图层。5.x还提供了更好的性能和更好的移动设备支持。 |
6.x-7.x | 这些版本主要对OpenLayers的代码进行了重构和优化,以提高性能和可维护性。它们还引入了一些新的特性,如高分辨率地图显示、动画效果、地图截图和导出等。 |
8.x | 这是OpenLayers次新版本。它继续改进和扩展OpenLayers的功能和性能,包括更好的3D地图支持、更丰富的数据源支持、更好的地图导航和交互等。8.x还更加注重可持续性和可访问性。 |
9.x |
OpenLayers6.13 版本带来了一些新特性:
- 对于每个图层对象,你可以使用
layer.getData()
方法来获取它的像素数据 - 类
ol/style/Text
支持了富文本标签,可以在一个标签中用不同的字体、样式了 - 模块
ol/proj
中,useGeographic()
和setUserProjection()
方法现在已经是官方 API 了,这两个方法使得地理坐标或局部投影坐标系的使用更简单 - 改进提升了 WebGL 瓦片和点图层
- 改善了
ol/Feature
的性能,当其没有回调时避免事件的创建 - 升级 geotiff.js 到第二版,修复了一些社区反馈的问题
- 修复了自动生成的 Typescript 类型
OpenLayers7.x升级了哪些功能
- 停止对IE的支持(OpenLayers7不再支持 Internet Explorer)
- (实验性)webgl图层新增支持line线条渲染。
- 但是经过博主实测,最新的OpenLayers7.5.2的webgl图层并不支持线条渲染,要到OpenLayers8版本才支持线条。
- (实验性)优化了webgl图层渲染性能,减少了5M左右的包大小。
- (实验性)webgl图层渲染支持low level style api(低级样式api),允许自定义webgl渲染样式
- 新增了刻度图层(Graticule)
- 可以为坐标系渲染格网的图层(目前仅支持 EPSG:4326)
- 新增了Link
- 支持mapbox数据源和mapbox样式
- 支持TIFF数据源
- 支持webgl瓦片
- webgl图层样式新增加一个decay表达式
- 其他新增功能请参考官方发布版本文档:https://github.com/openlayers/openlayers
OpenLayers8.x升级了哪些功能
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步