看起来有一些在iPhone上使用自定义真实字体(ttf)的工作解决方案,最值得注意的是Can I embed a custom font in an iPhone application?但是,此方法不支持开放式字体(otf)。
有没有人遇到过使用otf字体的方法?
答案 0 :(得分:70)
答案 1 :(得分:22)
您必须在设备上使用otf字体,还是可以将其转换为ttf?使用诸如fontforge之类的工具将OTF字体转换为TTF字体相对简单,这可能是一个简单的解决方案。
答案 2 :(得分:17)
我也遇到了麻烦。这对我有用:
NSArray *names = [UIFont fontNamesForFamilyName:@"Foo";
<__NSCFArray 0xe9c4da0>(
Foo-100Italic, Foo-100 )
myLabel.font = [UIFont fontWithName:@"Foo-100Italic" size:24];
答案 3 :(得分:7)
这篇文章回答了你的问题(它对我来说就像使用OTF的魅力): http://codewithchris.com/common-mistakes-with-adding-custom-fonts-to-your-ios-app/
完全支持OTF,无需转换为TTF
答案 4 :(得分:3)
关于第一个答案 - 解决方案是正确的(即只是将字体转换为TTF),但建议的软件编译和安装非常麻烦。相反,我只是做了一个快速的谷歌搜索并使用了这个:http://www.freefontconverter.com/并且完美无缺。
(确保将字体添加到info.plist文件中)
答案 5 :(得分:2)
我彻底研究了这个,这是我找到的最好的方法:
1)使用此在线工具将字体文件转换为TTF:http://www.freefontconverter.com/
2)将TTF文件添加到项目中
3)对info.plist文件进行一些配置:
3.1)编辑info.plist作为源代码(右键单击文件 - &gt;打开为 - &gt;源代码)
3.2)添加:
<key>UIAppFonts</key> <array> <string>font1.ttf</string> <string>font2.ttf</string> ...etc... </array>
3.3)你的info.plist现在应该有这个:
4)使用新字体,就像系统字体一样:
[UIFont fontWithName:@“font1”size:16.0];
(注意字体名称中没有“.ttf”)