美文网首页iOS Developer
iOS9以前版本自定义字体

iOS9以前版本自定义字体

作者: Rijkaa | 来源:发表于2017-01-19 20:50 被阅读154次

    PingfangSC字体

    • 自iOS9开始添加了PingFangSC(苹方)字体,UI看到其他App使用该字体体验不错,然后让我们App添加这种字体,为兼容iOS9及以前iOS系统使用这种字体,不乏网上搜集资料(下载各种字体放入project中使用),各种不爽
    • 最后从Mac字体册中找到** PingFangSC.ttc**,移入项目,感觉甚好。

    添加字体

    1.找到系统字体

    spotlight搜索“字体册”,找到pingfangsc.ttc,移入项目并添加到project的copy bundle resources中。

    找到字体库

    2.给项目添加字体库

    在info.plist的Fonts provided by application添加响应字体库名称,后缀也需要

    添加字体库到项目

    3.打印font family,检查是否安装成功

    移入项目后使用代码查看项目中支持的字体

    // 遍历获取字体名称
        for(NSString *fontFamilyName in [UIFont familyNames])
        {
            NSLog(@"family:'%@'",fontFamilyName);
            for(NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName])
            {
                NSLog(@"\tfont:'%@'",fontName);
            }
            NSLog(@"-------------");
        }
    
    • 打印日志如下:
     line:163 content:-------------
    
     line:158 content:family:'PingFang SC'
    
     line:161 content:  font:'PingFangSC-Medium'
    
     line:161 content:  font:'PingFangSC-Regular'
    
     line:161 content:  font:'PingFangSC-Light'
    
     line:161 content:  font:'PingFangSC-Ultralight'
    
     line:161 content:  font:'PingFangSC-Semibold'
    
     line:161 content:  font:'PingFangSC-Thin'
    
     line:163 content:-------------
    

    代码调用

    //label.text
    [depictLabel setFont:[UIFont fontWithName:@"PingFangSC-Regular" size:[Util getFontSizeFrom6:32]]];
    
    //NSAttributedString
    NSAttributedString *modifyCodeFieldAttributePlaceHolder = [[NSAttributedString alloc] initWithString:@"请输入验证码" attributes:@{NSForegroundColorAttributeName:[Util stringTOColor:@"#999999"],NSFontAttributeName: [UIFont fontWithName:@"PingFangSC-Regular" size:[Util getSizeFrom6:28]]}];
            _modifyCodeField.attributedPlaceholder = modifyCodeFieldAttributePlaceHolder;
            _modifyCodeField.font = [UIFont fontWithName:@"PingFangSC-Regular" size:[Util getSizeFrom6:28]];
    
    

    Avenir字体

    • Avenir.ttc的是罗马字体,主要用于数据和英文的展示,起初下意识起找字体册添加,但是Avenir字体貌似从iOS6就开始使用了。
      参考

    相关文章

      网友评论

        本文标题:iOS9以前版本自定义字体

        本文链接:https://www.haomeiwen.com/subject/hwnibttx.html