如何使用自定义字体获取UIFont对象?我记得Info.plist文件中还有一些内容。
支持哪些字体文件格式?
答案 0 :(得分:52)
要向应用程序添加自定义字体,可以将它们添加到XCode项目中。然后,修改application-info.plist文件。将“应用程序提供的字体”键添加到新行。为您添加的每种字体添加一个项目。
它支持TTF和OpenType字体。需要注意的是,它会在应用程序启动时加载和解析所有字体,因此会减慢初始加载时间。
我相信这只适用于iOS 3.2或更高版本。
答案 1 :(得分:9)
初学者的最佳链接
如何在项目Link
答案 2 :(得分:2)
在资源文件夹中将字体添加到项目中
并添加此功能:
func loadFont(filePath: String) {
let fontData = NSData(contentsOfFile: filePath)!
let dataProvider = CGDataProviderCreateWithCFData(fontData)
let cgFont = CGFontCreateWithDataProvider(dataProvider)!
var error: Unmanaged<CFError>?
if !CTFontManagerRegisterGraphicsFont(cgFont, &error) {
let errorDescription: CFStringRef = CFErrorCopyDescription(error!.takeUnretainedValue())
print("Unable to load font: %@", errorDescription)
}
}
使用示例:
if let fontPath = NSBundle.mainBundle().pathForResource("MyCustomFont", ofType:"ttf"){
loadFont(fontPath)
}
...
...
let myFont = UIFont(name: "MyCustomFont",size: CGFloat(18) )