出力の方法
iOS 7からは`kCTFontDownloadableAttribute`という属性が追加されているのでそれを利用します。
この方法で数えると、すべてのフォント数は283になりました。
iOS 7で新たに使えるようになった日本語のフォントとしてはOsakaとOsaka-等幅フォントがあります(追加ダウンロードフォント)。
かつてのMacの日本語システムフォントです。懐かしいですね。
+ (void)downloadableFonts { NSDictionary *attributes = @{(id)kCTFontDownloadableAttribute : (id)kCFBooleanTrue}; CTFontDescriptorRef fontDescriptor = CTFontDescriptorCreateWithAttributes((CFDictionaryRef)attributes); CFArrayRef matchedFontDescriptors = CTFontDescriptorCreateMatchingFontDescriptors(fontDescriptor, NULL); NSMutableDictionary *familyNames = [[NSMutableDictionary alloc] init]; NSInteger numberOfFonts = 0; NSMutableString *text = [[NSMutableString alloc] init]; for (UIFontDescriptor *fontDescriptor in (__bridge NSArray *)matchedFontDescriptors) { NSString *familyName = fontDescriptor.fontAttributes[UIFontDescriptorFamilyAttribute]; NSString *displayName = fontDescriptor.fontAttributes[UIFontDescriptorVisibleNameAttribute]; NSString *postscriptName = fontDescriptor.postscriptName; if (!familyNames[familyName]) { familyNames[familyName] = familyName; [text appendFormat:@"<b>%@</b>\n\n", familyName]; } NSMutableDictionary *fontDict = [NSMutableDictionary dictionary]; fontDict[@"displayName"] = displayName; fontDict[@"postscriptName"] = postscriptName; fontDict[@"descriptor"] = fontDescriptor; NSArray *languages = fontDescriptor.fontAttributes[@"NSCTFontDesignLanguagesAttribute"]; fontDict[@"languages"] = [languages componentsJoinedByString:@", "]; [text appendFormat:@"- %@ \"%@\" [%@]\n", postscriptName, displayName, [languages componentsJoinedByString:@", "]]; numberOfFonts++; } NSLog(@"%@", text); }
フォント一覧(日本語フォントは[ja])
AlFirat
- Al-Firat "Al-Firat" [ar]
AlKhalil
- Al-KhalilBold "Al-Khalil Bold" [ar]
- Al-Khalil "Al-Khalil" [ar]
AlRafidain
- Al-Rafidain "Al-Rafidain" [ar]
Al Bayan
- AlBayan "Al Bayan Plain" [en]
- AlBayan-Bold "Al Bayan Bold" [en]
Algiers
- Algiers "Algiers" [ar]
AlRafidain AlFanni
- AlRafidainAlFanni "Al-Rafidain Al-Fanni" [ar]
Al Tarikh
- AlTarikh "Al Tarikh" [en]
Andale Mono
- AndaleMono "Andale Mono" [en]
Apple Chancery
- Apple-Chancery "Apple Chancery" [en]
Apple Braille
- AppleBraille "Apple Braille" [en]
- AppleBraille-Outline6Dot "Apple Braille Outline 6 Dot" [en]
- AppleBraille-Outline8Dot "Apple Braille Outline 8 Dot" [en]
- AppleBraille-Pinpoint6Dot "Apple Braille Pinpoint 6 Dot" [en]
- AppleBraille-Pinpoint8Dot "Apple Braille Pinpoint 8 Dot" [en]
AppleGothic
- AppleGothic "AppleGothic Regular" [ko]
AppleMyungjo
- AppleMyungjo "AppleMyungjo Regular" [ko]
Apple SD Gothic Neo
- AppleSDGothicNeo-Bold "Apple SD Gothic Neo Bold" [ko]
- AppleSDGothicNeo-ExtraBold "Apple SD GothicNeo ExtraBold" [ko]
- AppleSDGothicNeo-Heavy "Apple SD Gothic Neo Heavy" [ko]
- AppleSDGothicNeo-Light "Apple SD Gothic Neo Light" [ko]
- AppleSDGothicNeo-Medium "Apple SD Gothic Neo Medium" [ko]
- AppleSDGothicNeo-Regular "Apple SD Gothic Neo Regular" [ko]
- AppleSDGothicNeo-SemiBold "Apple SD Gothic Neo SemiBold" [ko]
- AppleSDGothicNeo-Thin "Apple SD Gothic Neo Thin" [ko]
- AppleSDGothicNeo-UltraLight "Apple SD Gothic Neo UltraLight" [ko]
Apple Symbols
- AppleSymbols "Apple Symbols" [en]
Arial Black
- Arial-Black "Arial Black" [en]
Arial
- Arial-BoldItalicMT "Arial Bold Italic" [en]
- Arial-BoldMT "Arial Bold" [en]
- Arial-ItalicMT "Arial Italic" [en]
- ArialMT "Arial" [en]
Arial Narrow
- ArialNarrow "Arial Narrow" [en]
- ArialNarrow-Bold "Arial Narrow Bold" [en]
- ArialNarrow-BoldItalic "Arial Narrow Bold Italic" [en]
- ArialNarrow-Italic "Arial Narrow Italic" [en]
Arial Unicode MS
- ArialUnicodeMS "Arial Unicode MS" [en]
Ayuthaya
- Ayuthaya "Ayuthaya" [en]
Baghdad
- Baghdad "Baghdad" [en]
Bangla MN
- BanglaMN "Bangla MN" [en]
- BanglaMN-Bold "Bangla MN Bold" [en]
Basra
- Basra-Bold "Basra Bold" [ar]
- Basra "Basra" [ar]
Beirut
- Beirut "Beirut" [en]
Big Caslon
- BigCaslon-Medium "Big Caslon Medium" [en]
Book Antiqua
- BookAntiqua "BookAntiqua" [en]
- BookAntiqua-Italic "BookAntiqua-Italic" [en]
- BookAntiqua-BoldItalic "BookAntiqua-BoldItalic" [en]
- BookAntiqua-Bold "BookAntiqua-Bold" [en]
Bookman Old Style
- BookmanOldStyle "Bookman Old Style" [en]
- BookmanOldStyle-Italic "Bookman Old Style Italic" [en]
- BookmanOldStyle-BoldItalic "Bookman Old Style Bold Italic" [en]
- BookmanOldStyle-Bold "Bookman Old Style Bold" [en]
Brush Script MT
- BrushScriptMT "Brush Script MT Italic" [en]
Chalkboard
- Chalkboard "Chalkboard" [en]
- Chalkboard-Bold "Chalkboard Bold" [en]
Comic Sans MS
- ComicSansMS "Comic Sans MS" [en]
- ComicSansMS-Bold "Comic Sans MS Bold" [en]
Corsiva Hebrew
- CorsivaHebrew "Corsiva Hebrew" [en]
- CorsivaHebrew-Bold "Corsiva Hebrew Bold" [en]
DecoType Naskh
- DecoTypeNaskh "DecoType Naskh" [en]
Devanagari MT
- DevanagariMT "Devanagari MT" [en]
- DevanagariMT-Bold "Devanagari MT Bold" [en]
BiauKai
- DFKaiShu-SB-Estd-BF "BiauKai" [zh-Hant]
Wawati SC
- DFWaWaSC-W5 "Wawati SC Regular" [zh-Hans]
Wawati TC
- DFWaWaTC-W5 "Wawati TC Regular" [zh-Hant]
Dijla
- Dijla "Dijla" [ar]
Diwan Kufi
- DiwanKufi "Diwan Kufi" [en]
Diwan Thuluth
- DiwanThuluth "Diwan Thuluth" [en]
Farisi
- Farisi "Farisi" [en]
Lantinghei SC
- FZLTZHK--GBK1-0 "Lantinghei SC Demibold" [zh-Hans]
- FZLTXHK--GBK1-0 "Lantinghei SC Extralight" [zh-Hans]
- FZLTTHK--GBK1-0 "Lantinghei SC Heavy" [zh-Hans]
Lantinghei TC
- FZLTZHB--B51-0 "Lantinghei TC Demibold" [zh-Hant]
- FZLTXHB--B51-0 "Lantinghei TC Extralight" [zh-Hant]
- FZLTTHB--B51-0 "Lantinghei TC Heavy" [zh-Hant]
Garamond
- Garamond "Garamond " [en]
- Garamond-Italic "Garamond Italic" [en]
- Garamond-BoldItalic "Garamond Bold Italic" [en]
- Garamond-Bold "Garamond Bold" [en]
Gujarati MT
- GujaratiMT "Gujarati MT" [en]
- GujaratiMT-Bold "Gujarati MT Bold" [en]
Gurmukhi MN
- GurmukhiMN "Gurmukhi MN" [en]
- GurmukhiMN-Bold "Gurmukhi MN Bold" [en]
Gurmukhi Sangam MN
- GurmukhiSangamMN "Gurmukhi Sangam MN" [en]
- GurmukhiSangamMN-Bold "Gurmukhi Sangam MN Bold" [en]
Hannotate SC
- HannotateSC-W5 "Hannotate SC Regular" [zh-Hans]
Hannotate TC
- HannotateTC-W5 "Hannotate TC Regular" [zh-Hant]
- HannotateSC-W7 "Hannotate SC Bold" [zh-Hans]
- HannotateTC-W7 "Hannotate TC Bold" [zh-Hant]
HanziPen SC
- HanziPenSC-W3 "HanziPen SC Regular" [zh-Hans]
HanziPen TC
- HanziPenTC-W3 "HanziPen TC Regular" [zh-Hant]
- HanziPenSC-W5 "Weibei SC Bold" [zh-Hans]
- HanziPenTC-W5 "HanziPen TC Bold" [zh-Hant]
Herculanum
- Herculanum "Herculanum" [en]
Hiragino Sans GB
- HiraginoSansGB-W3 "ヒラギノ角ゴ 簡体中文 W3" [zh-Hans]
- HiraginoSansGB-W6 "ヒラギノ角ゴ 簡体中文 W6" [zh-Hans]
Hiragino Kaku Gothic Pro
- HiraKakuPro-W3 "ヒラギノ角ゴ Pro W3" [ja]
- HiraKakuPro-W6 "ヒラギノ角ゴ Pro W6" [ja]
Hiragino Kaku Gothic Std
- HiraKakuStd-W8 "ヒラギノ角ゴ Std W8" [ja]
Hiragino Kaku Gothic StdN
- HiraKakuStdN-W8 "ヒラギノ角ゴ StdN W8" [ja]
Hiragino Maru Gothic Pro
- HiraMaruPro-W4 "ヒラギノ丸ゴ Pro W4" [ja]
Hiragino Maru Gothic ProN
- HiraMaruProN-W4 "ヒラギノ丸ゴ ProN W4" [ja]
Hiragino Mincho Pro
- HiraMinPro-W3 "ヒラギノ明朝 Pro W3" [ja]
- HiraMinPro-W6 "ヒラギノ明朝 Pro W6" [ja]
YuMincho
- YuMin-Medium "游明朝体 ミディアム" [ja]
- YuMin-Demibold "游明朝体 デミボールド" [ja]
YuGothic
- YuGo-Bold "游ゴシック体 ボールド" [ja]
- YuGo-Medium "游ゴシック体 ミディアム" [ja]
Hoefler Text
- HoeflerText-Ornaments "Hoefler Text Ornaments" [en]
Impact
- Impact "Impact" [en]
InaiMathi
- InaiMathi "InaiMathi" [en]
Iowan Old Style Black
- IowanOldStyle-Black "Iowan Old Style Black" [en]
- IowanOldStyle-BlackItalic "Iowan Old Style Black Italic" [en]
Iowan Old Style
- IowanOldStyle-Bold "Iowan Old Style Bold" [en]
- IowanOldStyle-BoldItalic "Iowan Old Style Bold Italic" [en]
- IowanOldStyle-Italic "Iowan Old Style Italic" [en]
- IowanOldStyle-Roman "Iowan Old Style Roman" [en]
- IowanOldStyle-Titling "Iowan Old Style Titling" [en]
PilGi
- JCfg "PilGi Regular" [ko]
HeadLineA
- JCHEadA "HeadLineA Regular" [ko]
GungSeo
- JCkg "GungSeo Regular" [en]
PCMyungjo
- JCsmPC "PCMyungjo Regular" [ko]
Kannada MN
- KannadaMN "Kannada MN" [en]
- KannadaMN-Bold "Kannada MN Bold" [en]
Kefa
- Kefa-Regular "Kefa Regular" [en]
- Kefa-Bold "Kefa Bold" [en]
Khmer MN
- KhmerMN "Khmer MN" [en]
- KhmerMN-Bold "Khmer MN Bold" [en]
Khmer Sangam MN
- KhmerSangamMN "Khmer Sangam MN" [en]
Kokonor
- Kokonor "Kokonor Regular" [en]
Koufi Abjadi
- KoufiAbjadi "Koufi Abjadi" [ar]
Krungthep
- Krungthep "Krungthep" [en]
KufiStandardGK
- KufiStandardGK "KufiStandardGK" [en]
Laimoon
- Laimoon "Laimoon" [ar]
Lao MN
- LaoMN "Lao MN" [en]
- LaoMN-Bold "Lao MN Bold" [en]
Lao Sangam MN
- LaoSangamMN "Lao Sangam MN" [en]
Apple LiGothic
- LiGothicMed "Apple LiGothic Medium" [zh-Hant]
LiHei Pro
- LiHeiPro "LiHei Pro" [zh-Hant]
LiSong Pro
- LiSongPro "LiSong Pro" [zh-Hant]
Apple LiSung
- LiSungLight "Apple LiSung Light" [zh-Hant]
Lucida Grande
- LucidaGrande "Lucida Grande" [en]
- LucidaGrande-Bold "Lucida Grande Bold" [en]
.Lucida Grande UI
- .LucidaGrandeUI ".Lucida Grande UI" [en]
- .LucidaGrandeUI-Bold ".Lucida Grande UI Bold" [en]
Malayalam MN
- MalayalamMN "Malayalam MN" [en]
- MalayalamMN-Bold "Malayalam MN Bold" [en]
Microsoft Sans Serif
- MicrosoftSansSerif "Microsoft Sans Serif" [en]
Gurmukhi MT
- MonotypeGurmukhi "Gurmukhi MT" [en]
Mshtakan
- Mshtakan "Mshtakan" [en]
- MshtakanBold "Mshtakan Bold" [en]
- MshtakanBoldOblique "Mshtakan BoldOblique" [en]
- MshtakanOblique "Mshtakan Oblique" [en]
Muna
- Muna "Muna" [en]
- MunaBold "Muna Bold" [en]
- MunaBlack "Muna Black" [en]
Myanmar MN
- MyanmarMN "Myanmar MN" [en]
- MyanmarMN-Bold "Myanmar MN Bold" [en]
Myanmar Sangam MN
- MyanmarSangamMN "Myanmar Sangam MN" [en]
Nadeem
- Nadeem "Nadeem" [en]
Nanum Brush Script
- NanumBrush "Nanum Brush Script" [ko]
Nanum Pen Script
- NanumPen "Nanum Pen Script" [ko]
NanumGothic
- NanumGothic "NanumGothic" [ko]
- NanumGothicBold "NanumGothic Bold" [ko]
- NanumGothicExtraBold "NanumGothic ExtraBold" [ko]
NanumMyeongjo
- NanumMyeongjo "NanumMyeongjo" [ko]
- NanumMyeongjoBold "NanumMyeongjoBold" [ko]
- NanumMyeongjoExtraBold "NanumMyeongjoExtraBold" [ko]
New Peninim MT
- NewPeninimMT "New Peninim MT" [en]
- NewPeninimMT-Bold "New Peninim MT Bold" [en]
- NewPeninimMT-BoldInclined "New Peninim MT Bold Inclined" [en]
- NewPeninimMT-Inclined "New Peninim MT Inclined" [en]
Nisan
- Nisan "Nisan" [ar]
Oriya MN
- OriyaMN "Oriya MN" [en]
- OriyaMN-Bold "Oriya MN Bold" [en]
Osaka
- Osaka "Osaka" [ja]
- Osaka-Mono "Osaka−等幅" [ja]
Plantagenet Cherokee
- PlantagenetCherokee "Plantagenet Cherokee" [en]
PT Sans
- PTSans-Regular "PT Sans" [en]
- PTSans-Italic "PT Sans Italic" [en]
- PTSans-Bold "PT Sans Bold" [en]
- PTSans-BoldItalic "PT Sans Bold Italic" [en]
PT Sans Caption
- PTSans-Caption "PT Sans Caption" [en]
- PTSans-CaptionBold "PT Sans Caption Bold" [en]
PT Sans Narrow
- PTSans-Narrow "PT Sans Narrow" [en]
- PTSans-NarrowBold "PT Sans Narrow Bold" [en]
Raanana
- Raanana "Raanana" [en]
- RaananaBold "Raanana Bold" [en]
Raya
- Raya "Raya" [ar]
Sana
- Sana "Sana" [en]
Sathu
- Sathu "Sathu" [en]
Savoye LET
- SavoyeLetPlain "Savoye LET Plain:1.0" [en]
.Savoye LET CC.
- .SavoyeLetPlainCC "Savoye LET Plain CC.:1.0" [en]
Hei
- SIL-Hei-Med-Jian "Hei Regular" [zh-Hans]
Kai
- SIL-Kai-Reg-Jian "Kai Regular" [zh-Hans]
Silom
- Silom "Silom" [en]
Sinhala MN
- SinhalaMN "Sinhala MN" [en]
- SinhalaMN-Bold "Sinhala MN Bold" [en]
Somer
- Somer "Somer" [ar]
Baoli SC
- STBaoli-SC-Regular "Baoli SC Regular" [zh-Hans]
STFangsong
- STFangsong "STFangsong" [zh-Hans]
STHeiti
- STHeiti "STHeiti" [zh-Hans]
STIXGeneral
- STIXGeneral-Bold "STIXGeneral-Bold" [en]
- STIXGeneral-BoldItalic "STIXGeneral-BoldItalic" [en]
- STIXGeneral-Italic "STIXGeneral-Italic" [en]
- STIXGeneral-Regular "STIXGeneral-Regular" [en]
STIXIntegralsD
- STIXIntegralsD-Bold "STIXIntegralsD-Bold" [en]
- STIXIntegralsD-Regular "STIXIntegralsD-Regular" [en]
STIXIntegralsSm
- STIXIntegralsSm-Bold "STIXIntegralsSm-Bold" [en]
- STIXIntegralsSm-Regular "STIXIntegralsSm-Regular" [en]
STIXIntegralsUp
- STIXIntegralsUp-Bold "STIXIntegralsUp-Bold" [en]
- STIXIntegralsUp-Regular "STIXIntegralsUp-Regular" [en]
STIXIntegralsUpD
- STIXIntegralsUpD-Bold "STIXIntegralsUpD-Bold" [en]
- STIXIntegralsUpD-Regular "STIXIntegralsUpD-Regular" [en]
STIXIntegralsUpSm
- STIXIntegralsUpSm-Bold "STIXIntegralsUpSm-Bold" [en]
- STIXIntegralsUpSm-Regular "STIXIntegralsUpSm-Regular" [en]
STIXNonUnicode
- STIXNonUnicode-Bold "STIXNonUnicode-Bold" [en]
- STIXNonUnicode-BoldItalic "STIXNonUnicode-BoldItalic" [en]
- STIXNonUnicode-Italic "STIXNonUnicode-Italic" [en]
- STIXNonUnicode-Regular "STIXNonUnicode-Regular" [en]
STIXSizeFiveSym
- STIXSizeFiveSym-Regular "STIXSizeFiveSym-Regular" [en]
STIXSizeFourSym
- STIXSizeFourSym-Bold "STIXSizeFourSym-Bold" [en]
- STIXSizeFourSym-Regular "STIXSizeFourSym-Regular" [en]
STIXSizeOneSym
- STIXSizeOneSym-Bold "STIXSizeOneSym-Bold" [en]
- STIXSizeOneSym-Regular "STIXSizeOneSym-Regular" [en]
STIXSizeThreeSym
- STIXSizeThreeSym-Bold "STIXSizeThreeSym-Bold" [en]
- STIXSizeThreeSym-Regular "STIXSizeThreeSym-Regular" [en]
STIXSizeTwoSym
- STIXSizeTwoSym-Bold "STIXSizeTwoSym-Bold" [en]
- STIXSizeTwoSym-Regular "STIXSizeTwoSym-Regular" [en]
STIXVariants
- STIXVariants-Bold "STIXVariants-Bold" [en]
- STIXVariants-Regular "STIXVariants-Regular" [en]
Kaiti SC
- STKaiti-SC-Black "Kaiti SC Black" [zh-Hans]
- STKaiti-SC-Bold "Kaiti SC Bold" [zh-Hans]
Kaiti TC
- STKaiTi-TC-Bold "Kaiti TC Bold" [zh-Hant]
- STKaiti-SC-Regular "Kaiti SC Regular" [zh-Hans]
- STKaiTi-TC-Regular "Kaiti TC Regular" [zh-Hant]
Libian SC
- STLibian-SC-Regular "Libian SC Regular" [zh-Hans]
Songti SC
- STSongti-SC-Black "Songti SC Black" [zh-Hans]
- STSongti-SC-Light "Songti SC Light" [zh-Hans]
Songti TC
- STSongti-TC-Light "Songti SC Light" [zh-Hant]
- STSongti-SC-Bold "Songti SC Bold" [zh-Hans]
- STSongti-TC-Bold "Songti TC Bold" [zh-Hant]
- STSongti-SC-Regular "Songti SC Regular" [zh-Hans]
- STSongti-TC-Regular "Songti TC Regular" [zh-Hant]
- STXihei "STXihei" [zh-Hans]
Xingkai SC
- STXingkai-SC-Bold "Xingkai SC Bold" [zh-Hans]
- STXingkai-SC-Light "Xingkai SC Light" [zh-Hans]
Yuanti SC
- STYuanti-SC-Bold "Yuanti SC Bold" [zh-Hans]
- STYuanti-SC-Light "Yuanti SC Light" [zh-Hans]
- STYuanti-SC-Regular "Yuanti SC Regular" [zh-Hans]
Tahoma
- Tahoma "Tahoma" [en]
- Tahoma-Bold "Tahoma Bold" [en]
Tamil MN
- TamilMN "Tamil MN" [en]
- TamilMN-Bold "Tamil MN Bold" [en]
Telugu MN
- TeluguMN "Telugu MN" [en]
- TeluguMN-Bold "Telugu MN Bold" [en]
Waseem
- Waseem "Waseem" [en]
- WaseemLight "Waseem Light" [en]
Webdings
- Webdings "Webdings" [en]
Weibei SC
- Weibei-SC-Bold "Weibei SC Bold" [zh-Hans]
Weibei TC
- Weibei-TC-Bold "Weibei TC Bold" [zh-Hant]
Wingdings
- Wingdings-Regular "Wingdings" [en]
Wingdings 2
- Wingdings2 "Wingdings 2" [en]
Wingdings 3
- Wingdings3 "Wingdings 3" [en]
Yaziji
- Yaziji "Yaziji" [ar]
Yuppy SC
- YuppySC-Regular "Yuppy SC Regular" [zh-Hans]
Yuppy TC
- YuppyTC-Regular "Yuppy TC Regular" [zh-Hant]
Zawra
- Zawra-Bold "Zawra Bold" [ar]
- Zawra-Heavy "Zawra Heavy" [ar]
Century Gothic
- CenturyGothic "Century Gothic" [en]
- CenturyGothic-Bold "Century Gothic Bold" [en]
- CenturyGothic-Italic "Century Gothic Italic" [en]
- CenturyGothic-BoldItalic "Century Gothic Bold Italic" [en]
Century Schoolbook
- CenturySchoolbook "Century Schoolbook" [en]
- CenturySchoolbook-Bold "Century Schoolbook Bold" [en]
- CenturySchoolbook-Italic "Century Schoolbook Italic" [en]
- CenturySchoolbook-BoldItalic "Century Schoolbook Bold Italic" [en]
Tw Cen MT
- TwCenMT-Regular "Tw Cen MT" [en]
- TwCenMT-Bold "Tw Cen MT Bold" [en]
- TwCenMT-Italic "Tw Cen MT Italic" [en]
- TwCenMT-BoldItalic "Tw Cen MT Bold Italic" [en]