Leaflet:如何避免自定义图层的高文件数?

时间:2018-02-10 21:56:59

标签: leaflet

对于我的非商业,低流量网站,我成功地使用了具有众所周知来源的标准光栅图块层的Leaflet。

我想添加包含非常本地化的高分辨率地图的其他图层。我已成功地从这样的地图制作可用的栅格图块集,在我自己的服务器上托管图块,并将其添加为附加图层。但这会产生巨大的文件数量。我便宜的共享托管帐户承诺无限存储但限制文件(实际上,inode)计数。如果我再添加一个这样的tile-set,我就有可能被我的服务器抛弃。

显然,我可以寻找更高限制的托管帐户,我也在探索云替代方案。 (评论欢迎!)

还有其他想法吗?是否有免费或非常低成本的非商业企业用于低流量瓷砖存储?

或者:当我看到本地化的高分辨率地图时 - 我发现我可以相当容易地跟踪它们以创建矢量图形而不会丢失太多数据 - 并且在清晰度方面有所收获。我使用的是Adobe Illustrator。从.ai文件(或类似的矢量格式)到Leaflet图层是否有一种相当无痛的方法?与光栅替代方案相比,文件数量大大减少了吗?

如果我滥用了术语,请道歉 - 请纠正我 - 或者如果我一无所知地错过了解决这个问题的一些非常明显的方法。

TIA

1 个答案:

答案 0 :(得分:0)

这听起来像是Leaflet.TileLayer.MBTiles插件的一个很好的用例:(demo

  

LeafletJS插件,用于在.mbtiles format中加载图块集。

我们的想法是将您的Tiles写入单个.mbtiles文件(实际上是SQLite数据库),这样您只需要在服务器上托管该单个文件,而不是数千个单独的磁贴。

缺点是访问者现在需要在地图实际显示您的图块之前下载整个文件。但是导航非常流畅,因为不再需要从网络中提取磁贴,但浏览器都可以在本地使用。

至于生成.mbtiles文件,有许多implementations可以完成这项工作。