【问题标题】:UIFont Helvetica-Regular font issueUIFont Helvetica-Regular 字体问题
【发布时间】:2013-09-09 02:10:42
【问题描述】:

我需要使用 Helvetica-Regular 创建 UIFont,我使用以下代码:

UIFont *font = [UIFont fontWithName:@"Helvetica-Regular" size:size];

但是字体是空的。 如何正确地做到这一点?

【问题讨论】:

标签: iphone ios objective-c uifont


【解决方案1】:

调试器有助于找到可用的字体类型:-

(lldb) po [UIFont fontNamesForFamilyName:@"Helvetica"]

(id) $1 = 0x079d8670 <__NSCFArray 0x79d8670>(
Helvetica
Helvetica-Bold
Helvetica-BoldOblique
Helvetica-Light
Helvetica-LightOblique
Helvetica-Oblique
    )

所以,你可以试试他们中的任何一个。

礼貌:- https://stackoverflow.com/a/11741389/1865424

【讨论】:

    【解决方案2】:

    您可以像这样记录特定字体系列的所有可用样式:

    NSLog(@"%@", [UIFont fontNamesForFamilyName:@"Helvetica"]) ;
    

    >

    FontTest[41050:c07] (
        "Helvetica-LightOblique",
        Helvetica,
        "Helvetica-Oblique",
        "Helvetica-BoldOblique",
        "Helvetica-Bold",
        "Helvetica-Light"
    )
    

    您可能正在追求“Helvetica”...

    【讨论】:

      【解决方案3】:

      Helvetica-Regular 在 iOS 中不作为字体名称。有关字体名称的更多详细信息,请使用 iOS 版本检查 this link

      【讨论】:

        【解决方案4】:

        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】:

          没有字体名称为Helvetica-regular

          您可以使用以下表单

          Helvetica
          Helvetica-Bold
          Helvetica-BoldOblique
          Helvetica-Light
          Helvetica-LightOblique
          Helvetica-Oblique
          

          【讨论】:

            【解决方案6】:

            你可以查看 iOS here 支持的字体列表。 Helvetica Regular 字体不在此列表中。如果您想专门使用此字体名称,则必须将其添加为自定义字体。或者您可以简单地使用 Helvetica 字体名称。要使用自定义字体,您可以浏览这些链接:-

            How to use custom fonts in iPhone SDK?

            How to include and use new fonts in iPhone SDK?

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-12-28
              • 1970-01-01
              • 2011-01-21
              • 1970-01-01
              • 2012-06-20
              • 2017-04-05
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多