Getting Black Italic system font from UIFont
我似乎找不到找到" SF Pro Display Heavy Italic"字体的方法。
有
有
我想要特定重量的斜体系统字体(San Francisco Pro)
还是获得类似于非系统字体
上面的代码可以正常工作,但棘手的部分是用于较粗的斜体字体,您需要对特征使用(UIFontDescriptorTraitItalic | UIFontDescriptorTraitBold),而不仅仅是UIFontDescriptorTraitItalic。
这适用于Semibold,Bold,Heavy和Black字体(全部用斜体显示)。
看一下,出于类似原因,我使用了此类。
1 2 3 4 5 6 7 8 9 10 11 12 | extension UIFont { static func systemFont(ofSize: CGFloat, weight: UIFont.Weight, traits: UIFontDescriptorSymbolicTraits) -> UIFont? { let font = UIFont.systemFont(ofSize: ofSize, weight: weight) if let descriptor = font.fontDescriptor.withSymbolicTraits(traits) { return UIFont(descriptor: descriptor, size: ofSize) } return nil } } |