说明

1.加粗斜体,字体样式,API无法同时设置斜体,加粗。
2.因此UI为字体样式,需导入字体库,导致增大包体积。

  1. UIFontDescriptorSymbolicTraits可有效解决此问题
UIFontDescriptorSymbolicTraits的组合使用
/// SF-Pro-Display-HeavyItalic 斜体加粗
/// @param fontSize 字号
/// @param bold 加粗
/// @param italic 斜体
/// @param weight 加粗量级
+ (UIFont *)SFDisplayFontWithSize:(CGFloat)fontSize
                             bold:(BOOL)bold itatic:(BOOL)italic weight:(UIFontWeight)weight  {

    UIFont *font = [UIFont systemFontOfSize:fontSize weight:weight];
    UIFontDescriptorSymbolicTraits symbolicTraits = 0;
    if (italic) {
        symbolicTraits |= UIFontDescriptorTraitItalic;
    }
    if (bold) {
        symbolicTraits |= UIFontDescriptorTraitBold;
    }
    UIFont *specialFont = [UIFont fontWithDescriptor:[[font fontDescriptor] fontDescriptorWithSymbolicTraits:symbolicTraits] size:font.pointSize];
    return specialFont;
}


作者:一抹相思泪成雨
链接:https://www.jianshu.com/p/8090e846e1df
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章:

  • 2022-02-04
  • 2021-04-24
  • 2022-02-15
  • 2022-01-11
  • 2022-12-23
  • 2021-12-10
  • 2022-12-23
  • 2021-12-20
猜你喜欢
  • 2022-01-18
  • 2021-11-12
  • 2021-10-04
  • 2022-01-22
  • 2022-12-23
  • 2022-01-08
相关资源
相似解决方案