首页 / OpenLayers / 使用示例
拖放载入数据文件
DragAndDrop 交互挂上 GeoJSON 与 KML 两个解析器,拖入文件即上图并自动缩放到数据范围,另配内置数据按钮。
源码与运行效果
说明
ol.interaction.DragAndDrop 的 formats 是一组解析器实例,
浏览器把文件读成文本后会依次尝试;解析成功时触发 addfeatures,
事件里带着 features 与 file。
KMZ 是 ZIP 容器,需要先解压出里面的 KML,浏览器没有内置解压能力, 所以这里处理 GeoJSON 与 KML 两种纯文本格式;把解压后的内容直接拖进来同样可用。 没有文件时点「载入内置数据」,示例也准备了三个要素。
| 操作 | 结果 |
|---|---|
| 把 .geojson 拖到地图上 | 要素上图,视图自动适配范围 |
| 把 .kml 拖到地图上 | 由 KML 解析器读取并上图 |
| 点击「载入内置数据」 | 内置多边形与两个点出现 |
拖放解析用的是文件文本内容,编码不是 UTF-8 的 KML 可能读出乱码,接入前先确认导出来源。