iOS - How to detect whether a font is bold/black/heavy...?

Viewed 1565

I want to detect the style(bold ,heavy, black) of a font. But I can just detect whether the font is bold.

BOOL isBold = (font.fontDescriptor.symbolicTraits & UIFontDescriptorTraitBold)!=0;

There is no black or heavy trait in UIFontDescriptorSymbolicTraits.

A way is to check the font name whether contains 'black' or 'heavy' string, but this seems unreliable.

There is UIFontWeightTrait, but it's just for UIFont systemFontOfSize: weight:

And I want to create my custom font with a style if there is available these style.

3 Answers
Related