Mapbox本地化处理思路总结

思路

  1. 通过地图下载器、OSM、百度云、GIS数据服务网站等资源获取矢量数据
  2. 通过Geoserver发布矢量切片服务(具体见之前的文章)
  3. 通过开源工具spritezero cli或者java代码制作雪碧图
  4. 通过开源工具node-fontnik制作字体pbf文件
  5. 通过开源工具Maputnik本地化编辑地图样式,生成style.json文件
  6. Mapbox加载style.json数据实现本地化处理

难点

除了第3点和第4点不熟悉之外,其它的都已经自己动手实现过。这两点使用的spritezero clinode-fontnik开源工具只适合在linux系统部署,因为我不熟悉,所以暂放。
具体可参考文末链接。

要点

矢量切片制作与发布

  1. 关于Geoserver的,可以见之前学过的博客
  2. PostGIS也能发布矢量切片服务,待研究

Maputnik的使用

本地化处理

  1. github链接:https://github.com/maputnik/editor

  2. 下载本地版本:https://github.com/maputnik/editor/wiki/Maputnik-CLI
    https://github.com/maputnik/editor/releases/tag/v1.7.0
    有对应的windows版本文件

  3. 在线版本:https://maputnik.github.io/editor
    弊端就是,在线添加的第三方链接需要https协议,否则无法发布,而本地版本,可以使用http协议

本地版的使用注意事项

添加Source时,按照mapbox支持的矢量切片链接的格式来就行
在这里插入图片描述
Tile URL示例:

"http://localhost:8080/geoserver/gwc/service/tms/1.0.0/webgis%3Ashanghai_full@EPSG%3A3857@pbf/{z}/{x}/{y}.pbf"

添加图层
在这里插入图片描述
Source要与之前AddSource时填写的Source ID名称一致。
Source Layer要与矢量切片发布时的对应图层名称一致。
否则找不到图层,无法在地图上展示。

因为,Mapbox加载矢量切片时,使用的schemetms,而Maputnik Editor没有对应的选项,需要自己在添加图层后,先导出Style文件,添加scheme后,再重新导入,这样,自己发布的地图数据才能在Maputnik中正常使用,否则会出现偏移。

参考文档

如何不改源码让maputnik支持geoserver
Mapbox GL JS本地化实践
mapbox-gl本地化实践

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值