场景:
最近因为客户需求,需要把.shp的地图文件在百度地图上展示。
通过前期的大致了解,我的思路就是,看下 .shp 文件能不能转成 包含坐标点的 json 文件,然后通过Java代码解析 json 文件,并导入数据库中保存。
这样的话,就需要进行地图转换,通过咨询度娘得知,QGIS 和 arcgis 两款软件可以打开 .shp 文件,当我费了九牛二虎之力找到 QGIS 安装包并成功安装,经过客户技术的指导,打开 .shp 文件并显示标注信息,正准备进行坐标信息转换并转成json文件时,对方和我说的,转换坐标要 arcgis 软件…… 嗯……我很好,继续安装 arcgis 软件。
资源路径:
QGIS下载路径:链接:https://pan.baidu.com/s/1fo2Yaw1UsMYz7Fr5ytHrPA 提取码:ilnk
arcgis中文版及破解 下载路径:链接:https://pan.baidu.com/s/1iLiY8Sls9oxa-917Q7fPHA 提取码:cqbc
QCIS是客户技术发的,arcgis因为找的版本太多,忘记原来是在哪了,就直接贴云盘地址了。
安装、破解:
arcgis 安装教程:https://jingyan.baidu.com/article/e73e26c0cb5c1324adb6a791.html
里面也有下载地址,我没试下载,但是安装步骤跟着一步步走的,没有问题。
打开.shp文件:
百度教程:https://jingyan.baidu.com/article/046a7b3ef23054f9c27fa937.html#opennewwindow
显示标注:
上面一切都挺顺利的,但是客户给的地图截图上面是有标注信息的,而我这边打开完后的地图里面只有线条,没有显示标注信息,于是乎继续研究……试了好几种方法,终于成功了。
第一步: 在左侧选中图层,右键 --> 打开属性表
第二步:在打开的属性表中,根据需要显示的内容找到对应的标题,如果先前就得知,可以跳过这步
第三步:选中图层,右键 --> 属性 打开
第四步:选中你要显示的标注列名,需要多个组合展示的,选择表达式
第五步,设置表达式展示,如果是单列展示的,可以跳过
[列名]
& 拼接标识
"-" 自定义的分割符
最终显示效果就是 01-123 这种,表达式根据需要自己进行书写。
设置完,点击确定保存。
第六步:点击放置属性,在新开窗口中勾选 仅在面内部放置标注
第七步:这是最重要的一步!!!网上找了很多都没说这个,导致我一直显示不出来
一定要勾选 标注此图层中的要素!!!
然后点击 应用,确定即可。
如果设置后还是无效,先检查第七步,一定要记得勾选!