首页 > 解决方案 > 下载的mbtiles中的多语言支持

问题描述

我已经从 openmaptiles 下载了 mbtiles,并且还在网页中显示了它们。我用来将标签从英语翻译成其他语言。但它不起作用。有人知道如何更改语言吗?(应该提到我用 mapbox gl 显示它)

标签: vectoropenstreetmapmapbox-gl-jsmbtilesopenmaptiles

解决方案


在类似的情况下,我通过运行 docker setup 获得的样式tileserver-gl包含许多层,例如:"poi_label-en". 这些标签会阻止 klokantech/openmaptiles-language 创建的新标签正确显示(该库将创建图层,例如"poi_label-de"基于"poi_label"德语的定义)。

我建议以下步骤使 openmaptiles-language 正常工作:

  • 取你想要的最新样式,如:https ://github.com/openmaptiles/klokantech-basic-gl-style
  • 更新样式以指向您的源、字形和精灵。(以您当前的风格为基础)
  • 如果字体名称与服务器提供的字体名称不匹配,则可能会更改它们(我必须从“Noto Sans Regular”更新为“Klokantech Noto Sans Regular”)

然后,如果您按照klokantech/openmaptiles-language说明和示例进行操作,它应该可以正常工作。

检查您的 javascript 实现的一种快速方法是使用 openmaptiles 的云解决方案来处理图块和样式。如果它工作正常,则 javascript 部分没问题,问题在于您的样式是如何定义的。


推荐阅读