iOS-获取UIFont 相关默认属性

目录
一 获取 UIFont 所有字体
NSArray *familyNames = [UIFont familyNames];
for( NSString *familyName in familyNames ){
    printf( "Family: %s \n", [familyName UTF8String] );
    NSArray *fontNames = [UIFont fontNamesForFamilyName:familyName];
    for( NSString *fontName in fontNames ){
        printf( "\tFont: %s \n", [fontName UTF8String] );
    }
}

打印结果

Family: Copperplate 
    Font: Copperplate-Light 
    Font: Copperplate 
    Font: Copperplate-Bold 
Family: Heiti SC 
Family: Apple SD Gothic Neo 
    Font: AppleSDGothicNeo-Thin 
    Font: AppleSDGothicNeo-Light 
    Font: AppleSDGothicNeo-Regular 
    Font: AppleSDGothicNeo-Bold 
    Font: AppleSDGothicNeo-SemiBold 
    Font: AppleSDGothicNeo-UltraLight 
    Font: AppleSDGothicNeo-Medium 
Family: Thonburi 
    Font: Thonburi 
    Font: Thonburi-Light 
    Font: Thonburi-Bold 
Family: Gill Sans 
    Font: GillSans-Italic 
    Font: GillSans-SemiBold 
    Font: GillSans-UltraBold 
    Font: GillSans-Light 
    Font: GillSans-Bold 
    Font: GillSans 
    Font: GillSans-SemiBoldItalic 
    Font: GillSans-BoldItalic 
    Font: GillSans-LightItalic 
Family: Marker Felt 
    Font: MarkerFelt-Thin 
    Font: MarkerFelt-Wide 
Family: Hiragino Maru Gothic ProN 
    Font: HiraMaruProN-W4 
Family: Courier New 
    Font: CourierNewPS-ItalicMT 
    Font: CourierNewPSMT 
    Font: CourierNewPS-BoldItalicMT 
    Font: CourierNewPS-BoldMT 
Family: Kohinoor Telugu 
    Font: KohinoorTelugu-Regular 
    Font: KohinoorTelugu-Medium 
    Font: KohinoorTelugu-Light 
Family: Heiti TC 
Family: Avenir Next Condensed 
    Font: AvenirNextCondensed-Heavy 
    Font: AvenirNextCondensed-MediumItalic 
    Font: AvenirNextCondensed-Regular 
    Font: AvenirNextCondensed-UltraLightItalic 
    Font: AvenirNextCondensed-Medium 
    Font: AvenirNextCondensed-HeavyItalic 
    Font: AvenirNextCondensed-DemiBoldItalic 
    Font: AvenirNextCondensed-Bold 
    Font: AvenirNextCondensed-DemiBold 
    Font: AvenirNextCondensed-BoldItalic 
    Font: AvenirNextCondensed-Italic 
    Font: AvenirNextCondensed-UltraLight 
Family: Tamil Sangam MN 
    Font: TamilSangamMN 
    Font: TamilSangamMN-Bold 
Family: Helvetica Neue 
    Font: HelveticaNeue-UltraLightItalic 
    Font: HelveticaNeue-Medium 
    Font: HelveticaNeue-MediumItalic 
    Font: HelveticaNeue-UltraLight 
    Font: HelveticaNeue-Italic 
    Font: HelveticaNeue-Light 
    Font: HelveticaNeue-ThinItalic 
    Font: HelveticaNeue-LightItalic 
    Font: HelveticaNeue-Bold 
    Font: HelveticaNeue-Thin 
    Font: HelveticaNeue-CondensedBlack 
    Font: HelveticaNeue 
    Font: HelveticaNeue-CondensedBold 
    Font: HelveticaNeue-BoldItalic 
Family: Gurmukhi MN 
    Font: GurmukhiMN-Bold 
    Font: GurmukhiMN 
Family: Georgia 
    Font: Georgia-BoldItalic 
    Font: Georgia-Italic 
    Font: Georgia 
    Font: Georgia-Bold 
Family: Times New Roman 
    Font: TimesNewRomanPS-ItalicMT 
    Font: TimesNewRomanPS-BoldItalicMT 
    Font: TimesNewRomanPS-BoldMT 
    Font: TimesNewRomanPSMT 
Family: Sinhala Sangam MN 
    Font: SinhalaSangamMN-Bold 
    Font: SinhalaSangamMN 
Family: Arial Rounded MT Bold 
    Font: ArialRoundedMTBold 
Family: Kailasa 
    Font: Kailasa-Bold 
    Font: Kailasa 
Family: Kohinoor Devanagari 
    Font: KohinoorDevanagari-Regular 
    Font: KohinoorDevanagari-Light 
    Font: KohinoorDevanagari-Semibold 
Family: Kohinoor Bangla 
    Font: KohinoorBangla-Regular 
    Font: KohinoorBangla-Semibold 
    Font: KohinoorBangla-Light 
Family: Chalkboard SE 
    Font: ChalkboardSE-Bold 
    Font: ChalkboardSE-Light 
    Font: ChalkboardSE-Regular 
Family: Apple Color Emoji 
    Font: AppleColorEmoji 
Family: PingFang TC 
    Font: PingFangTC-Regular 
    Font: PingFangTC-Thin 
    Font: PingFangTC-Medium 
    Font: PingFangTC-Semibold 
    Font: PingFangTC-Light 
    Font: PingFangTC-Ultralight 
Family: Gujarati Sangam MN 
    Font: GujaratiSangamMN 
    Font: GujaratiSangamMN-Bold 
Family: Geeza Pro 
    Font: GeezaPro-Bold 
    Font: GeezaPro 
Family: Damascus 
    Font: DamascusBold 
    Font: DamascusLight 
    Font: Damascus 
    Font: DamascusMedium 
    Font: DamascusSemiBold 
Family: Noteworthy 
    Font: Noteworthy-Bold 
    Font: Noteworthy-Light 
Family: Avenir 
    Font: Avenir-Oblique 
    Font: Avenir-HeavyOblique 
    Font: Avenir-Heavy 
    Font: Avenir-BlackOblique 
    Font: Avenir-BookOblique 
    Font: Avenir-Roman 
    Font: Avenir-Medium 
    Font: Avenir-Black 
    Font: Avenir-Light 
    Font: Avenir-MediumOblique 
    Font: Avenir-Book 
    Font: Avenir-LightOblique 
Family: Mishafi 
    Font: DiwanMishafi 
Family: Academy Engraved LET 
    Font: AcademyEngravedLetPlain 
Family: Futura 
    Font: Futura-CondensedExtraBold 
    Font: Futura-Medium 
    Font: Futura-Bold 
    Font: Futura-CondensedMedium 
    Font: Futura-MediumItalic 
Family: Party LET 
    Font: PartyLetPlain 
Family: Kannada Sangam MN 
    Font: KannadaSangamMN-Bold 
    Font: KannadaSangamMN 
Family: Arial Hebrew 
    Font: ArialHebrew-Bold 
    Font: ArialHebrew-Light 
    Font: ArialHebrew 
Family: Farah 
    Font: Farah 
Family: Arial 
    Font: Arial-BoldMT 
    Font: Arial-BoldItalicMT 
    Font: Arial-ItalicMT 
    Font: ArialMT 
Family: Chalkduster 
    Font: Chalkduster 
Family: Kefa 
    Font: Kefa-Regular 
Family: Hoefler Text 
    Font: HoeflerText-Italic 
    Font: HoeflerText-Black 
    Font: HoeflerText-Regular 
    Font: HoeflerText-BlackItalic 
Family: Optima 
    Font: Optima-ExtraBlack 
    Font: Optima-BoldItalic 
    Font: Optima-Italic 
    Font: Optima-Regular 
    Font: Optima-Bold 
Family: Palatino 
    Font: Palatino-Italic 
    Font: Palatino-Roman 
    Font: Palatino-BoldItalic 
    Font: Palatino-Bold 
Family: Malayalam Sangam MN 
    Font: MalayalamSangamMN-Bold 
    Font: MalayalamSangamMN 
Family: Al Nile 
    Font: AlNile 
    Font: AlNile-Bold 
Family: Lao Sangam MN 
    Font: LaoSangamMN 
Family: Bradley Hand 
    Font: BradleyHandITCTT-Bold 
Family: Hiragino Mincho ProN 
    Font: HiraMinProN-W3 
    Font: HiraMinProN-W6 
Family: PingFang HK 
    Font: PingFangHK-Medium 
    Font: PingFangHK-Thin 
    Font: PingFangHK-Regular 
    Font: PingFangHK-Ultralight 
    Font: PingFangHK-Semibold 
    Font: PingFangHK-Light 
Family: Helvetica 
    Font: Helvetica-Oblique 
    Font: Helvetica-BoldOblique 
    Font: Helvetica 
    Font: Helvetica-Light 
    Font: Helvetica-Bold 
    Font: Helvetica-LightOblique 
Family: Courier 
    Font: Courier-BoldOblique 
    Font: Courier-Oblique 
    Font: Courier 
    Font: Courier-Bold 
Family: Cochin 
    Font: Cochin-Italic 
    Font: Cochin-Bold 
    Font: Cochin 
    Font: Cochin-BoldItalic 
Family: Trebuchet MS 
    Font: TrebuchetMS-Bold 
    Font: TrebuchetMS-Italic 
    Font: Trebuchet-BoldItalic 
    Font: TrebuchetMS 
Family: Devanagari Sangam MN 
    Font: DevanagariSangamMN 
    Font: DevanagariSangamMN-Bold 
Family: Oriya Sangam MN 
    Font: OriyaSangamMN 
    Font: OriyaSangamMN-Bold 
Family: Rockwell 
    Font: Rockwell-Italic 
    Font: Rockwell-Regular 
    Font: Rockwell-Bold 
    Font: Rockwell-BoldItalic 
Family: Snell Roundhand 
    Font: SnellRoundhand 
    Font: SnellRoundhand-Bold 
    Font: SnellRoundhand-Black 
Family: Zapf Dingbats 
    Font: ZapfDingbatsITC 
Family: Bodoni 72 
    Font: BodoniSvtyTwoITCTT-Bold 
    Font: BodoniSvtyTwoITCTT-BookIta 
    Font: BodoniSvtyTwoITCTT-Book 
Family: Verdana 
    Font: Verdana-Italic 
    Font: Verdana 
    Font: Verdana-Bold 
    Font: Verdana-BoldItalic 
Family: American Typewriter 
    Font: AmericanTypewriter-CondensedBold 
    Font: AmericanTypewriter-Condensed 
    Font: AmericanTypewriter-CondensedLight 
    Font: AmericanTypewriter 
    Font: AmericanTypewriter-Bold 
    Font: AmericanTypewriter-Semibold 
    Font: AmericanTypewriter-Light 
Family: Avenir Next 
    Font: AvenirNext-Medium 
    Font: AvenirNext-DemiBoldItalic 
    Font: AvenirNext-DemiBold 
    Font: AvenirNext-HeavyItalic 
    Font: AvenirNext-Regular 
    Font: AvenirNext-Italic 
    Font: AvenirNext-MediumItalic 
    Font: AvenirNext-UltraLightItalic 
    Font: AvenirNext-BoldItalic 
    Font: AvenirNext-Heavy 
    Font: AvenirNext-Bold 
    Font: AvenirNext-UltraLight 
Family: Baskerville 
    Font: Baskerville-SemiBoldItalic 
    Font: Baskerville-SemiBold 
    Font: Baskerville-BoldItalic 
    Font: Baskerville 
    Font: Baskerville-Bold 
    Font: Baskerville-Italic 
Family: Khmer Sangam MN 
    Font: KhmerSangamMN 
Family: Didot 
    Font: Didot-Bold 
    Font: Didot 
    Font: Didot-Italic 
Family: Savoye LET 
    Font: SavoyeLetPlain 
Family: Bodoni Ornaments 
    Font: BodoniOrnamentsITCTT 
Family: Symbol 
    Font: Symbol 
Family: Charter 
    Font: Charter-BlackItalic 
    Font: Charter-Bold 
    Font: Charter-Roman 
    Font: Charter-Black 
    Font: Charter-BoldItalic 
    Font: Charter-Italic 
Family: Menlo 
    Font: Menlo-BoldItalic 
    Font: Menlo-Bold 
    Font: Menlo-Italic 
    Font: Menlo-Regular 
Family: Noto Nastaliq Urdu 
    Font: NotoNastaliqUrdu 
Family: Bodoni 72 Smallcaps 
    Font: BodoniSvtyTwoSCITCTT-Book 
Family: DIN Alternate 
    Font: DINAlternate-Bold 
Family: Papyrus 
    Font: Papyrus-Condensed 
    Font: Papyrus 
Family: Hiragino Sans 
    Font: HiraginoSans-W3 
    Font: HiraginoSans-W6 
Family: PingFang SC 
    Font: PingFangSC-Medium 
    Font: PingFangSC-Semibold 
    Font: PingFangSC-Light 
    Font: PingFangSC-Ultralight 
    Font: PingFangSC-Regular 
    Font: PingFangSC-Thin 
Family: Myanmar Sangam MN 
    Font: MyanmarSangamMN 
    Font: MyanmarSangamMN-Bold 
Family: Noto Sans Chakma 
    Font: NotoSansChakma-Regular 
Family: Zapfino 
    Font: Zapfino 
Family: Telugu Sangam MN 
Family: Bodoni 72 Oldstyle 
    Font: BodoniSvtyTwoOSITCTT-BookIt 
    Font: BodoniSvtyTwoOSITCTT-Book 
    Font: BodoniSvtyTwoOSITCTT-Bold 
Family: Euphemia UCAS 
    Font: EuphemiaUCAS 
    Font: EuphemiaUCAS-Italic 
    Font: EuphemiaUCAS-Bold 
Family: Bangla Sangam MN 
Family: DIN Condensed 
    Font: DINCondensed-Bold 
二 获取 UIFont 系统默认字体

当我们创建一个 UILabel 的时候,往往会设置字体大小,但是系统使用的是哪一种默认字体呢?

UILabel *lbe = [[UILabel alloc] init];
lbe.font = [UIFont systemFontOfSize:16];

接下来我们就看看系统默认的是哪一种字体

#import <CoreText/CoreText.h>

- (void)getDefFont {
    UIFont *font = [UIFont systemFontOfSize:17];
    CTFontRef fontRef = CTFontCreateWithName((CFStringRef)font.fontName, 11, NULL);
    if (fontRef) {
        CFStringRef cfName1 = CTFontCopyFamilyName(fontRef);
        CFStringRef cfName2 = CTFontCopyFullName(fontRef);
        CFStringRef cfName3 = CTFontCopyDisplayName(fontRef);
        CFStringRef cfName4 = CTFontCopyPostScriptName(fontRef);
        NSLog(@"FamilyName - %@",cfName1);
        NSLog(@"FullName - %@",cfName2);
        NSLog(@"DisplayName - %@",cfName3);
        NSLog(@"PostScriptName - %@",cfName4);
    }
    NSLog(@"----------------");
    NSLog(@"%@", font);
}

打印结果

FamilyName - .SF UI Text
FullName - System Font Regular
DisplayName - System Font
PostScriptName - .SFUIText
----------------
<UICTFont: 0x7fb3c8602460> font-family: ".SFUIText"; font-weight: normal; font-style: normal; font-size: 17.00pt

通过打印可知,系统默认字体为System Font Regular

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,277评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,689评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,624评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,356评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,402评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,292评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,135评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,992评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,429评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,636评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,785评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,492评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,092评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,723评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,858评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,891评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,713评论 2 354

推荐阅读更多精彩内容