如何将自定义字体添加到iPhone应用程序?
要将自定义字体添加到应用程序中,可以将它们添加到XCode项目。然后,修改application-info.plist文件。将“应用程序提供的字体”键添加到新行。为您添加的每种字体添加一个项目。
它支持TTF和OpenType两种字体。需要注意的是,它会在您的应用程序启动时加载并解析所有字体,因此会减慢初始加载时间。
我相信这只适用于iOS 3.2或更高版本。
我添加到Info.plist的内容是什么?完整的文件名或? – esbenr 2011-11-09 07:30:05
是的,完整的文件名。 – 2012-07-13 21:24:25
yourprojectname-Info.plist是完整的文件名。 – ArnoHlaMoe 2013-01-11 12:27:24
编程方式(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))
这很棒,似乎可以提高启动时间。谢谢! – chrilith 2016-07-12 09:02:39
可能重复的[我可以在iPhone应用程序中嵌入自定义字体?](http://stackoverflow.com/questions/360751/can-i-embed-a-custom-font-in-an-iphone-应用程序) – 2010-10-01 14:14:48
有用的教程:http://codewithchris.com/common-mistakes-with-adding-custom-fonts-to-your-ios-app/ – Suragch 2015-02-25 05:59:03