我需要使用 Helvetica-Regular 创建 UIFont,我使用以下代码:
UIFont *font = [UIFont fontWithName:@"Helvetica-Regular" size:size];
但是字体是空的。如何正确地做到这一点?
我需要使用 Helvetica-Regular 创建 UIFont,我使用以下代码:
UIFont *font = [UIFont fontWithName:@"Helvetica-Regular" size:size];
但是字体是空的。如何正确地做到这一点?
你可以在这里查看 iOS 支持的字体列表。Helvetica Regular字体不在此列表中。如果您想专门使用此字体名称,则必须将其添加为自定义字体。或者您可以简单地使用Helvetica字体名称。要使用自定义字体,您可以浏览这些链接:-
没有字体名称Helvetica-regular
您可以使用以下表格
Helvetica
Helvetica-Bold
Helvetica-BoldOblique
Helvetica-Light
Helvetica-LightOblique
Helvetica-Oblique
调试器有助于找到可用的字体类型:-
(lldb) po [UIFont fontNamesForFamilyName:@"Helvetica"]
(id) $1 = 0x079d8670 <__NSCFArray 0x79d8670>(
Helvetica
Helvetica-Bold
Helvetica-BoldOblique
Helvetica-Light
Helvetica-LightOblique
Helvetica-Oblique
)
所以,你可以试试他们中的任何一个。
Helvetica-Regular 在 iOS 中不作为字体名称。有关字体名称的更多详细信息,请查看此链接与 iOS 版本。
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]);
}
}
您可以记录特定字体系列的所有可用样式,如下所示:
NSLog(@"%@", [UIFont fontNamesForFamilyName:@"Helvetica"]) ;
>
FontTest[41050:c07] (
"Helvetica-LightOblique",
Helvetica,
"Helvetica-Oblique",
"Helvetica-BoldOblique",
"Helvetica-Bold",
"Helvetica-Light"
)
您可能正在追求“Helvetica”...