字形在 Swift 中带有 ttf 文件
Posted
技术标签:
【中文标题】字形在 Swift 中带有 ttf 文件【英文标题】:Glyph's with a ttf file in Swift 【发布时间】:2016-02-02 12:27:55 【问题描述】:我正在尝试将 ttf 文件用于 ios 应用程序的字形,并且字体字符串存在一些问题...我可以从 ttf 文件中读取 unicode 字体,但似乎没有读取字形文件。
例如,以下代码适用于 unicode 字符。
let myFont = UIFont(name: "WeatherIcons-Regular", size: 15)
cell.detailTextLabel?.font = myFont
cell.detailTextLabel?.text = "\u26c8"
但是,如果我尝试读取字形,则图标会显示为一个问号,周围有一个框。
let myFont = UIFont(name: "WeatherIcons-Regular", size: 15)
cell.detailTextLabel?.font = myFont
cell.detailTextLabel?.text = "\uf001"
链接到下面的 ttf 文件和 css 文件。
CSS File TTF File我已将字体文件添加到我的应用程序中。
【问题讨论】:
我接受了您的回答,但它没有完整的解决方案...我只是不接受您的回答...我试图将您的回答重新用作完整的解决方案。 您是如何在项目中包含 CSS 的?尝试在 iOS 应用中使用相同的字体。 【参考方案1】:让你在 iOS 项目的 Info.plist 中添加“Fonts provided by application”(即 UIAppFonts)键,并添加项“weathericons-regular-webfont.ttf”。
UIAppFonts (Array - iOS) 指定应通过正常机制提供的任何应用程序提供的字体。数组中的每个项目都是一个字符串,其中包含位于应用程序包中的字体文件的名称(包括文件扩展名)。系统会加载指定的字体,并在应用运行时让它们可供应用使用。
像这样:
用 Font Book 应用打开字体文件,我们可以看到字体名称是“天气图标”。然后打印所有字体名称以检查字体是否可用:
print(UIFont.familyNames())
【讨论】:
@JeffSloyer 您可能忘记将字体文件添加到您的应用程序目标。【参考方案2】:确保ttf
文件包含在目标中。您可以通过在项目中设置字体文件的目标成员身份来做到这一点。
【讨论】:
以上是关于字形在 Swift 中带有 ttf 文件的主要内容,如果未能解决你的问题,请参考以下文章
HTML/CSS 通过 unicode + CSS 中的类使用 ttf 字体