---
title: "Flow Builder 中的自定义字体"
description: "在 Flow Builder 中上传并使用自定义字体。"
---

在构建流程时，你可能希望使用自定义字体以与应用的整体风格保持一致。下面介绍如何添加自定义字体并在流程中使用它们。

:::tip
在开始设计流程之前，先在 **Styles** 面板中[配置字体](onboarding-text)。这样，你所做的任何更改都会全局生效。
:::
## 内置字体 \{#built-in-fonts\}

在编辑工具中创建流程时，Adapty 默认使用系统字体。iOS 通常为 SF Pro，Android 通常为 Roboto，具体取决于设备型号。你也可以从常用字体中选择，例如 Arial、Times New Roman、Courier New、Georgia 和 Helvetica。这些字体均提供多种字体样式选项。
这些字体并非 Adapty SDK 的内置资源，仅用于预览目的。我们无法保证它们在所有设备上都能完美呈现。不过，根据我们的测试，大多数设备无需任何额外配置即可识别这些字体。你也可以[查看 iOS 默认可用的字体列表](https://developer.apple.com/fonts/system-fonts/)。

## 添加自定义字体 \{#add-a-custom-font\}

如果默认字体无法满足需求，你可以添加自定义字体。

添加自定义字体的步骤如下：

1. 在任意字体下拉菜单中选择 **Upload new font**。

2. 在 **Add custom font** 窗口中，填写以下字段：
- **Font name in Builder**：输入字体的显示名称，该名称将出现在付费墙编辑工具的字体下拉列表中。
   - **iOS font name**：输入字体的 PostScript 名称，可在字体册（Font Book）→ PostScript 名称中找到，或通过 [`UIFont` API](https://developer.apple.com/documentation/uikit/uifont) 获取。
   - **Android font name**：输入 `res/font/` 目录下的文件名，只能使用小写字母、数字和下划线。
   - **Font file**：拖放字体文件或点击 **Select files**，支持的格式：`.ttf`、`.otf`、`.woff`、`.woff2`。

3. 点击 **Save font**。

:::warning
你上传的字体文件不会发送到设备，仅用于预览。我们的 SDK 只会接收引用字体名称的字符串，然后在渲染付费墙时使用该字体。因此，你必须将相同的字体文件打包进应用中，并为各平台提供正确的字体名称，才能让一切正常运作。放心，这不会花太多时间。
:::

将字体文件上传至 Adapty，即表示你确认有权在你的应用中使用该字体。
## 将字体文件添加到应用的 bundle 中 \{#add-the-font-files-to-your-apps-bundle\}

如果你的应用中已经在其他地方使用了自定义字体，只需以相同方式添加付费墙所需的字体即可。如果还没有，请确保将字体文件添加到应用的项目和 bundle 中。具体操作方法请参阅以下文档：

- iOS 端：[Apple 官方文档](https://developer.apple.com/documentation/uikit/adding-a-custom-font-to-your-app)
- Android 端：[Android 官方文档](https://developer.android.com/develop/ui/views/text-and-emoji/fonts-in-xml)
:::important
下载字体包时，您会收到一个包含所有字体变体的压缩文件。为减小应用体积，请只将付费墙实际用到的字体文件添加到应用包中。例如，如果您的付费墙只使用了 `OpenSans-Regular.ttf`，则无需将 `OpenSans-Bold.ttf` 加入应用包。
:::