as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

expo-font

expo-font

@amazon-devices/expo-font提供了一个在运行时加载字体并在React Native组件中使用它们的接口。

安装

  1. package.json文件中添加JavaScript库依赖项。

    已复制到剪贴板。

     dependencies: {
         ...
         "@amazon-devices/keplerscript-turbomodule-api": "~1.0.0",
         "@amazon-devices/expo-asset": "~2.0.0",
         "@amazon-devices/expo-constants": "~2.0.0",
         "@amazon-devices/expo-font": "~2.0.0",
         "expo": "~50.0.0",
         ...
     }
    
  2. 使用npm install命令重新安装依赖项。

示例

下面的示例演示了如何使用useFonts挂钩加载字体。您需要下载.otf文件并替换useFonts调用中的内容。

已复制到剪贴板。


import {useFonts} from '@amazon-devices/expo-font';
import React from 'react';
import {StyleSheet, Text, View} from 'react-native';

export const App = () => {
  const [fontsLoaded] = useFonts({
    'Inter-Black': require('./assets/fonts/Inter-Black.otf'),
  });

  if (!fontsLoaded) {
    return null;
  }

  return (
    <View style={styles.container}>
      <Text style={[styles.text, {fontFamily: 'Inter-Black'}]}>
        Inter Black
      </Text>
      <Text style={styles.text}>Platform Default</Text>
    </View>
  );
};

const styles = StyleSheet.create({
  container: {
    flex: 1,
    padding: 20,
    backgroundColor: 'white',
  },
  text: {
    fontSize: 30,
    color: 'black',
  },
});

API参考

请您查看以下专门文档页面,了解有关此库、API参考等的信息: 针对expo-font的官方Expo文档(仅提供英文版)。

挂钩

挂钩 描述
useFonts 使用loadAsync加载字体映射。如果字体已加载并且可以使用,则返回boolean

方法

方法 描述
isLoaded 同步检测fontFamily的字体是否已完成加载。
isLoading 同步检测fontFamily的字体是否仍在加载中。
loadAsync 从静态或远程资源加载字体的高效方法,可以将其结合平台的原生文本元素一起使用。
processFontFamily 用于将字体系列名称转换为作用域内名称。此项不需要在独立应用或裸应用中调用,但如果在这些上下文中调用,它将返回非作用域内的字体系列名称。
unloadAllAsync 卸载所有自定义字体。此项用于测试。
unloadAsync 卸载与所提供的fontFamily和显示值相匹配的自定义字体。

添加自定义字体

除了修改应用中的标准Vega字体外,您还可以加载自己的自定义字体。

要加载自定义字体,请将您的字体文件放在assets/fonts/目录中。

您的字体文件名必须与字体系列名称相匹配。例如,如果字体系列名称为Open Sans,则您的字体文件名应为Open Sans.ttf

支持的版本

程序包版本 基于 @amazon-devices/react-native-kepler版本
2.0.x 11.8.0 2.0.x

其他资源

有关其他库的信息,请参阅支持的第三方库和服务


Last updated: 2025年9月30日