如何在 SwiftUI 中使用 Font Awesome 作为自定义字体?

Posted

技术标签:

【中文标题】如何在 SwiftUI 中使用 Font Awesome 作为自定义字体?【英文标题】:How do I use Font Awesome as a custom font in SwiftUI? 【发布时间】:2020-09-28 06:47:21 【问题描述】:

我已经按照许多教程向我的 SwiftUI 包添加自定义字体。我已采取以下步骤:

Font Awesome 5 Free Solid-900.otf 添加到我的项目中。 确保将字体复制并添加到目标中 将字体文件名添加到Info.plist 中的Fonts provided by application 数组中 试图获取字体名称 尝试了字体名称的大量排列和组合。

我尝试了以下方法:

Text(Text("\uf071 Danger Will Robinson").font(.custom("Font Awesome 5 Free Regular", size: 20))

这应该给我一个警报图标,但我得到的只是一个问号。

这样使用 Font Awesome 有什么技巧吗?

我知道有一些可用的软件包,但我正在尝试更多地了解这个过程本身,我看不出它应该太难了。

【问题讨论】:

【参考方案1】:

好的,我解决了。

对于 MacOS,Info.plist 键是:Application fonts resource path不是如上。 下一个技巧是获取字体名称。

一种方法是安装字体,然后检查 FontBook。 PostScript 名称 是我需要的名称。

另一种是运行如下代码:

let fontManager = NSFontManager.shared
let fonts = fontManager.availableFonts
for name in fonts 
    print(name)

所有教程都适用于 ios,而不是 MacOS 时,就会发生这种情况。

【讨论】:

以上是关于如何在 SwiftUI 中使用 Font Awesome 作为自定义字体?的主要内容,如果未能解决你的问题,请参考以下文章

如何创建像字体真棒这样的图标

如何减小字体真棒图标的大小?

如何使用适当的可访问性修饰符覆盖 SwiftUI Picker

SwiftUI:如何将视图附加到多行文本的结尾?

SwiftUI TextEditor 如何隐藏键盘

如何在 SwiftUI 中创建指数