我需要使用Helvetica-Regular创建UIFont,我使用此代码:
UIFont *font = [UIFont fontWithName:@"Helvetica-Regular" size:size];
但字体是nill。 怎么做到这一点?
答案 0 :(得分:5)
您可以查看iOS here支持的字体列表。此列表中没有 Helvetica Regular 字体。如果您想特别使用此字体名称,则必须将其添加为自定义字体。或者您只需使用 Helvetica 字体名称即可。要使用自定义字体,您可以浏览以下链接: -
答案 1 :(得分:4)
没有字体名称Helvetica-regular
您可以使用以下表格
Helvetica
Helvetica-Bold
Helvetica-BoldOblique
Helvetica-Light
Helvetica-LightOblique
Helvetica-Oblique
答案 2 :(得分:3)
调试器有助于找到可用字体的类型: -
(lldb) po [UIFont fontNamesForFamilyName:@"Helvetica"]
(id) $1 = 0x079d8670 <__NSCFArray 0x79d8670>(
Helvetica
Helvetica-Bold
Helvetica-BoldOblique
Helvetica-Light
Helvetica-LightOblique
Helvetica-Oblique
)
所以,你可以尝试其中任何一个。
答案 3 :(得分:1)
Helvetica-Regular不是iOS中的字体名称。有关字体名称的更多详细信息,请使用iOS versionwise检查this link。
答案 4 :(得分:0)
UIFont *font = [UIFont fontWithName:@"Helvetica" size:size];
要发现所有可用的字体及其名称:
+(void)dumpDescriptionOfAllAvailableFonts {
NSMutableArray *allFonts = [NSMutableArray array];
NSLog(@"%d font families", [[UIFont familyNames] count]);
for(NSString *familyName in [UIFont familyNames]) {
for(NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {
[allFonts addObject:fontName];
}
}
NSLog(@"%d fonts", [allFonts count]);
for(NSString *fontName in [allFonts sortedArrayUsingDescriptors:@[[NSSortDescriptor sortDescriptorWithKey:@"description" ascending:YES]]]) {
NSLog(@"%@",[fontName description]);
}
}
答案 5 :(得分:0)
您可以记录特定字体系列的所有可用样式,如下所示:
NSLog(@"%@", [UIFont fontNamesForFamilyName:@"Helvetica"]) ;
&GT;
FontTest[41050:c07] (
"Helvetica-LightOblique",
Helvetica,
"Helvetica-Oblique",
"Helvetica-BoldOblique",
"Helvetica-Bold",
"Helvetica-Light"
)
你可能是在追求“Helvetica”......