IOS 设计师钟爱的PingFangSC字体

打印iOS系统中可用的字体

for (NSString *fontFamilyName in [UIFont familyNames]) {
        NSLog(@"family: '%@'", fontFamilyName);
        for (NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName]) {
            NSLog(@"\tfont:'%@'", fontName);
        }
        NSLog(@"--------------");
    }

部分打印结果:

2018-02-27 13:54:47.709188+0800 testBanner[14732:429085]    font:'HiraginoSans-W6'
2018-02-27 13:54:47.709867+0800 testBanner[14732:429085] --------------
2018-02-27 13:54:47.710253+0800 testBanner[14732:429085] family: 'PingFang SC'
2018-02-27 13:54:47.710507+0800 testBanner[14732:429085]    font:'PingFangSC-Medium'
2018-02-27 13:54:47.710716+0800 testBanner[14732:429085]    font:'PingFangSC-Semibold'
2018-02-27 13:54:47.711009+0800 testBanner[14732:429085]    font:'PingFangSC-Light'
2018-02-27 13:54:47.711529+0800 testBanner[14732:429085]    font:'PingFangSC-Ultralight'
2018-02-27 13:54:47.711665+0800 testBanner[14732:429085]    font:'PingFangSC-Regular'
2018-02-27 13:54:47.711768+0800 testBanner[14732:429085]    font:'PingFangSC-Thin'
2018-02-27 13:54:47.711979+0800 testBanner[14732:429085] --------------
2018-02-27 13:54:47.712102+0800 testBanner[14732:429085] family: 'Myanmar Sangam MN'

从UI拿到的设计图中字体基本上都是PingFangSC的,.iOS9.0以后系统自带了平方字体PingFangSC,但是在iOS9.0以前,是没有平方字体PingFangSC的。之前代码实现的实现的时候没有注意该问题,导致代码UIFont *font = [UIFontfontWithName:@"PingFangSC-Regular"size:15]在iOS8系统上运行font结果会为nil, 最终将由系统决定字体和字体大小,与设计师的设计图中字体效果会不一样。

解决方案:
1)判断系统,在9.0及以上系统中使用PingFangSC字体,在低版本中使用其他字体代替
2)导入PingFangSC字体

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容