我们在 Android 上加载自定义字体时遇到 2 个问题。
950
,这是不允许的值。这是使用:
"expo": "~51.0.8",
"expo-font": "~12.0.5",
在 app.json 上:
"plugins": [
[
"expo-font",
{
"fonts": [
"./assets/fonts/Averta-Regular.otf",
"./assets/fonts/Averta-RegularItalic.otf",
"./assets/fonts/Averta-Semibold.otf",
"./assets/fonts/Averta-SemiboldItalic.otf",
"./assets/fonts/Averta-Black.otf",
"./assets/fonts/Averta-BlackItalic.otf"
]
}
]
],
然后部分代码是:
<Text
style={{ fontFamily: "Averta-Black", fontWeight: 950, fontSize: 32 }}
>
Averta Black 950
</Text>
<Text
style={{
fontFamily: "Averta-SemiboldItalic",
fontWeight: 600,
fontSize: 32,
fontStyle: "italic",
}}
>
Averta Semibold Italic 600
</Text>
控制台上没有错误或警告,但字体无法按预期工作。 对我们可以尝试什么有什么建议吗?
感谢所有这个问题 https://github.com/facebook/react-native/issues/42116
我们发现
fontWeight
和 fontStyle
导致了渲染错误。
我们使用完整的特定
fontFamily
,而不使用 fontWeight
和 fontStyle
。
示例代码变为:
<Text
style={{ fontFamily: "Averta-Black", fontSize: 32 }}
>
Averta Black 950
</Text>
<Text
style={{
fontFamily: "Averta-SemiboldItalic",
fontSize: 32,
}}
>
Averta Semibold Italic 600
</Text>
对于我们真正的应用程序,我们使用了类似于此处解释的方法https://stackoverflow.com/a/55717885/3695939