ttf字体在界面构建器或模拟器中不适用于iPhone

时间:2010-12-21 10:42:37

标签: iphone cocoa-touch fonts ios-simulator

我在我的Xcode项目中添加了一个字体文件(.ttf)到资源。另外,我将它添加到我的info.plist中的UIAppFonts。

当我想使用这种字体时,我甚至不认为它是IB的选择。

在我的系统上安装字体之后,我开始在IB中看到它,但仍然 - 改变它并没有改变任何东西 - 一些默认的系统字体显示在Interface Builder和iPhone模拟器中。

为了能够使用我自己的字体,我还应该做些什么吗?

2 个答案:

答案 0 :(得分:17)

要在iOS上使用自定义字体,您必须以编程方式设置它们。

例如,假设您有一个名为 swellfont.ttf 的字体文件,您将其添加到项目中。 然后,您将进入App-Info.plist文件,并将该文件的全名添加到由UIAppFonts键入的数组的下一个索引中,如您所述。

<key>UIAppFonts</key>
<array>
    <string>swellfont.ttf</string>
</array>

然后,使用字体:

label.font = [UIFont fontWithName:@"swellfont" size:12];

假设标签是 UILabel swellfont.ttf 不是protected。重要的是要注意UIFont的fontWithName不是指文件名,而是需要字体的实际名称。如果您使用FontForge打开字体,可以通过选择元素&gt;来查看此信息。菜单栏中的字体信息。可能有更聪明的方法可以找到这些信息。

答案 1 :(得分:0)

我在APP中使用了2种字体。第一个被自动添加到“Copy Bundle Resources”,另一个则没有。我必须自己添加一个。

致电代码:

[labelName setFont:[UIFont fontWithName:@"OneGreatBigFont" size:40]];