使用自定义字体 2个月前

编程语言
497
使用自定义字体

如何在 React Native 中使用自定义字体

设置字体文件名称

在 Mac OS 系统下,打开字体册 APP。

TIP

同时按下 ⌘ + 空格键,搜索字体册可快速找到字体册 APP。

将下载的字体文件拖到我的字体

custom-font-2023-01-11-12-42-42

选中字体,点击信息图标,查看 PostScript 名称

custom-font-2023-01-11-12-43-43

最后一步,重要!!

修改字体文件名为 PostScript 名称。

添加字体

在项目根目录下创建 assets/fonts 文件夹,将更改名称后的字体文件放到这个文件夹下。

如图:

定义 assets 目录

在项目根目录下创建 react-native.config.js 文件,编辑其中内容,留意第 6 行,这和我们自定义字体文件所在目录一致。

module.exports = {
  project: {
    ios: {},
    android: {},
  },
  assets: ['./assets/fonts/'],
}

执行 npx react-native link 命令,

TIP

如果你的 RN 版本为 0.69+,那么使用 npx react-native-asset 命令

custom-font-2022-07-01-11-56-25

对于 Android 来说,这个命令做了如下事情:

将字体文件拷贝到 android/app/src/main/assets/fonts 目录下,如图

对于 iOS 来说,这个命令做了如下事情:

创建 Resources 文件夹,并将字体文件 link 到该文件夹下,如图

注意 iOS 并没有拷贝字体文件,而是通过相对路径指向了字体文件所在。

custom-font-2022-07-01-12-09-10

iOS 所做的另外一件事情便是修改 Info.plist 文件,添加了字体配置

<key>UIAppFonts</key>
<array>
  <string>DFWaWaSC-W5.otf</string>
</array>

当明白了 npx react-native link 所做的事情后,我们也可以通过手动的方式添加字体。

在样式中使用字体

在样式表中,使用 fontFamily 属性来指定字体。

const styles = StyleSheet.create({
  text: {
    backgroundColor: 'transparent',
    fontSize: 17,
    fontFamily: 'DFWaWaSC-W5',
    textAlign: 'center',
    margin: 8,
  },
})

custom-font-2022-07-01-11-46-01

示例

这里有一个示例open in new window,供你参考。

也可以参考Ultimate guide to use custom fonts in react nativeopen in new window,讲得比本文要好。

image
EchoEcho官方
无论前方如何,请不要后悔与我相遇。
1377
发布数
439
关注者
2223783
累计阅读

热门教程文档

Spring Boot
24小节
PHP
52小节
Next
43小节
Swift
54小节
HTML
32小节