如何在Mapbox iOS SDK中使用捆绑字体?

问题描述

我正在使用MapBox iOS SDK 6.2.0-beta.2及其doesn't load the custom fonts we serve on our tile server。为了加快iOS 14的准备工作,我试图使MapBox使用本地可用的字体,但是找不到很好的示例。 docs对我来说有点模糊。您能帮我让MapBox使用本地字体代替JSON样式中指定的字体吗?

解决方法

根据Customizing Fonts上的Mapbox文档:

如果符号层未指定包含所需字形的可用字体,则地图将尝试在MGLIdeographicFontFamilyName Info.plist键中找到匹配的字体。

来自MGLIdeographicFontFamilyName上的Mapbox参考:

此键为所有地图视图和地图快照中的所有样式层指定一个后备。

此键既可以设置为单个字符串,也可以设置为字符串数组,地图尝试按从最喜欢到最不喜欢的顺序应用这些键。每个字符串可以是姓氏(例如,“ PingFang TC”),显示名称(“ PingFang TC Ultralight”)或PostScript名称(“ PingFangTC-Ultralight”)。

因此,如果您需要使用本地绑定的字体作为地图样式,请在MGLIdeographicFontFamilyName中放置一个locally embedded font名称,家族或PostScript名称的字符串(或按优先顺序排列的字符串数组)在项目的Info.plist文件中。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...