我正在尝试为我的iOS应用使用自定义字体。这是我做的事情
我将自定义字体(m.tff)添加到Xcode支持文件目录中。另外,我创建了一个名为Fonts的条目,由myApp.plist中的字体(m.tff)的值名称提供。
在我看来,我有一个标签
UILabel *label = [[UILabel alloc]initWithFrame:CGRect(10, 20, 230, 30)];
label.font = [UIFont fontWithName:@"My custom font" size:15];
等...
问题在于,当我启动应用程序时,标签中的文本是使用默认字体而不是使用特定字体。
我想念的是什么?
EDITED
好吧现在看起来很有效,但字体仅适用于像?但不是为了信件。 我正在使用西里尔文。
答案 0 :(得分:9)
使用此功能获取所有可用字体
// List all fonts on iPhone
NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]];
for(NSString *familyName in familyNames)
{
NSLog(@"family: %@", familyName);
NSArray *fontNames = [[NSArray alloc] initWithArray:[UIFont fontNamesForFamilyName:familyName]];
for(NSString *fontName in fontNames)
{
NSLog(@" font: %@", fontName);
}
}
查找嵌入的字体,看看它的名称是否相同。
答案 1 :(得分:4)
字体扩展名应为ttf而不是tiff
然后在plist中输入
应用程序Font.ttf
提供的字体答案 2 :(得分:2)
检查您的[UIFont fontWithName:@"My font" size:15]
行是否返回非空的UIFont对象。
答案 3 :(得分:2)
在Info.plist文件中,添加带有数组对象的密钥:Fonts provided by application
,并将数组项设置为字符串,如下所示:
MyFont.ttf
其中MyFont
是Mac应用程序中字体列出的确切名称,“Font Book”。使用Spotlight启动字体书,然后在其中找到您的字体文件以仔细检查名称。
然后,当您将字体设置为标签时:
myLabel.font = [UIFont fontWithName: @"MyFont" size: someFloatValue];
答案 4 :(得分:0)
m.tiff听起来不像支持的字体文件,即TrueType或OpenType。
答案 5 :(得分:0)