arcgis style样式表文件转换成geoserver sld文件

arcgis style样式表文件转换成geoserver sld文件

目录

0.目的

1.探索

2.缺点


0.目的

        arcgis mxd 或者 shp文件中的样式表转成geoserver所需要的sld样式表文件。

        why:arcgis server(portal)发布服务不用管这些,但是这是商业版的,如果我要用开源的就需要geoserver来实现了,虽然geoserver只支持二维服务,那么很多数据都是arcgis来绘制的,样式表需要一样才能完整的表达出数据的信息,那么就需要将arcgis的样式表转成geoserver所需要的。有很多人会建议用qgis自己重新绘制样式表,但是会有不匹配的地方,不如直接将arcgis的样式表转成geoserver需要的sld文件;

        how:网上说的较多的是arcmap2sld,arc2earth,但是都有各种问题存在(不免费、安装环境等)

1.探索

目前看到2个比较适合的操作方案,虽然比较麻烦一点,但是免费

        [1] Converting ESRI Styles to QGIS XML Using SLYR — open.gis.lab

        [2] https://github.com/camptocamp/lyrx2sld

------------------------------------------------------------------------------------------------

        [2] arcgis pro lyrx样式表转geoserver支持的sld文件代码:

# refer https://github.com/GeoCat/bridge-style/issues/59
# lyrx2sld github项目 即以 GeoCat/bridge-style 为基础开展的
import json
from bridgestyle import sld, arcgis

input_file = "/my/path/input.lyrx"
output_file = "/my/path/output.sld"

# Read the *.lyrx JSON
with open(input_file) as f:
    esri_style = json.load(f)

# Convert Esri CIM to GeoStyler (intermediate format)
geostyler, _, warnings = arcgis.togeostyler.convert(esri_style)
print(warnings)

# Convert GeoStyler to SLD
sld_output, warnings = sld.fromgeostyler.convert(geostyler)

# Write the XML output string to the destination SLD file
with open(output_file) as f:
    f.write(sld_output)

2.缺点

        目前我仅仅是搜索到了这2个;

        对于lyrx2sld,如果你的是lyr文件,那么用arcgis pro打开另存为lyrx文件即可,然后采用代码直接转【但是很多样式其实是转不了的,即使geoserver设置了esri的fonts,样式显示乱码,因此,仅能转换部分样式;geoserver开源确实没办法做到这么详细的样式表】

        假如你获取到了arcgis pro,那么应该可以直接导出吧,我没有测试过!

        在ArcGIS中右键工具栏,customize,选择command选项卡,在搜索框中输入style ,选择tools,将第一个工具“export map styles”拖动到工具栏上,就可以用啦。未探索

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值