流程与付费墙编辑工具中的自定义字体

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

同一应用中的所有流程共享你上传的字体,包括你复制的流程。Adapty 账户中的其他应用则需要各自单独上传。

Tip

在开始设计流程之前,请先在 Styles 面板中配置字体。这样,您所做的任何更改都将全局生效。

内置字体

在编辑工具中创建流程时,Adapty 默认使用系统字体。iOS 通常为 SF Pro,Android 通常为 Roboto,具体取决于设备型号。你也可以从常用字体中选择,例如 Arial、Times New Roman、Courier New、Georgia 和 Helvetica。这些字体均提供多种字体样式选项。

这些字体并非 Adapty SDK 的内置资源,仅用于预览目的。我们无法保证它们在所有设备上都能完美呈现。不过,根据我们的测试,大多数设备无需任何额外配置即可识别这些字体。你也可以查看 iOS 默认可用的字体列表。

Built-in fonts

添加自定义字体

Warning

您上传的文件仅供编辑器预览使用 — Adapty 不会将其推送到用户设备。要在设备上渲染字体,请将文件添加到应用程序包中。否则,SDK 在运行时将回退使用 SF Pro(iOS)或 Roboto(Android)。

如果需要使用系统默认字体以外的字体,可以添加自定义字体。

添加自定义字体的步骤:

  1. 在任意字体下拉菜单中选择 Upload new font。
Add custom font
  1. 在 Add custom font 窗口中,将字体文件拖放到指定区域或点击 Select files:

    • 支持的格式:.ttf 和 .otf。
    • 可变字体:Adapty 会为文件中每个命名样式(如 Regular 或 Bold)单独创建一个字体字形。
    • 同时上传多个字体:一次性添加所有字体文件。Adapty 会读取每个文件中存储的字体家族名称,并将文件归组到对应的字体家族中。例如,2 个字体的 10 个文件将被整理为 2 个字体家族,每个家族包含 5 个字形。
    • 已有字体家族:若上传文件的字体家族名称与已上传的字体相同,该文件将作为新字形加入该字体家族。
    Add custom font window with one font file queued
  2. 点击 Add fonts。Adapty 上传文件后,每个字体家族显示一张卡片。如需修改字体家族名称,点击名称旁边的铅笔图标 。

    Import review: the Atkinson Hyperlegible family with Regular, Italic, Bold, and Bold Italic faces
  3. 如有需要,为每个字体字形配置属性:

    • Font Family:字体所属的字族——你可以将该字形移至其他字族。
    • Font Face:字形的字重和样式——上传时自动检测。
    • iOS font name 和 Android font name:字体在你应用中的名称。它们必须与应用包中的字体文件名称相匹配。
    Face settings: Font Family, Font Face, iOS font name, and Android font name

上传字体文件至 Adapty,即表示你确认拥有在应用中使用该字体的合法权利。

管理自定义字体

点击 Edit custom font 打开属性编辑页面。

Edit custom font window: the family name, four styles, and the Add font face button
  • 若要重命名字体系列,请编辑 Font family name in Builder。
  • 若要添加新的字重或样式,请点击 Add font face。
  • 若要修正某个样式的 iOS 或 Android 字体名称,请点击对应行。
  • 若要为某个样式上传新文件,请点击对应行,然后点击 Replace。

删除自定义字体

要删除字体家族或单个字体样式,请在属性编辑页面中点击 Delete font family 或 Delete font face。

如果某个字体样式正在被任何流程使用,Adapty 无法直接将其删除。此时系统会提示你从字体库中选择一个替代字体。使用旧字体样式的元素将改用新字体。点击 Replace & delete 确认操作。

删除 Ubuntu-Bold 前请替换:为每个正在使用的字体样式选择替代字体家族和样式

流程模板中的自定义字体

流程模板库中包含使用自定义字体的模板。将鼠标悬停在模板卡片上的 Custom font 标签,即可查看该模板使用的字体名称。

Adapty 不内置这些字体,需要你自行获取,字体名称以标签中显示的为准。部分字体可能需要商业授权。

获取字体文件后,请按照以下步骤将其打包到项目中。

将字体文件添加到应用的资源包中

Adapty 不会向用户设备下发自定义字体,因此应用必须自行包含流程中所用到的每个字体文件。如果你的应用已经使用了自定义字体,按照同样的方式添加即可。如果还没有,请参考以下平台指南:

流程通过名称查找应用中的每种字体,因此 Adapty 中的名称必须与您的应用保持一致。如需查看名称,请在字体设置中打开相应样式:

  • iOS font name:字体文件内部存储的 PostScript 名称。iOS 通过此名称而非文件名来查找字体,它在应用内所有自定义字体中必须唯一。如果字体文件中已声明该名称,Adapty 会自动填入。可变字体文件通常不包含此名称,需要手动输入。查找方法:打开字体册 > PostScript 名称,或使用 UIFont API。
  • Android font name:res/font/ 目录下的文件名,不含扩展名。只能使用小写字母、数字和下划线。Adapty 不会自动填入。由同一个可变字体文件创建的所有字型共享此名称。