要获取具有自定义字体的UIFont对象,我必须执行什么操作?我记得在Info.plist文件中也发生了一些事情。
支持哪些字体文件格式?
发布于 2010-12-28 16:40:16
要向应用程序中添加自定义字体,可以将其添加到XCode项目中。然后,修改application-info.plist
文件。将键Fonts provided by application
添加到新行。为您添加的每种字体添加一个项目。
它同时支持TTF和OpenType字体。需要注意的是,它会在应用程序启动时加载和解析所有字体,因此会减慢初始加载时间。
我相信这只在iOS 3.2或更高版本中可用。
发布于 2015-09-26 20:04:55
编程方式(Swift)
将字体添加到资源文件夹中的项目中
并添加此函数:
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))
https://stackoverflow.com/questions/3837965
复制相似问题