Xcode 6中的自定义字体

问题描述:

我有一个自定义字体,我已将其导入到xcode中,我想用作UIFont。当我尝试使用字体名称创建UIFont时,它不起作用。我试过查看每个字体系列中的所有字体,但没有看到字体。但是当我进入故事板时,我可以使用字体。任何人都可以将我指向正确的方向吗?Xcode 6中的自定义字体

下面是用于打印字体的代码。字体被称为NEXA光与NEXA粗体(苹果说的真名是一样的没有空格):

for family in UIFont.familyNames() as [String] { 
    println(" ---" + family + "---") 
    for font in UIFont.fontNamesForFamilyName(family) { 
     println("  " + (font as String)) 
    } 
} 

继承人所有的字体输出:

---Marion--- 
    Marion-Italic 
    Marion-Bold 
    Marion-Regular 
---Copperplate--- 
    Copperplate-Light 
    Copperplate 
    Copperplate-Bold 
---Heiti SC--- 
    STHeitiSC-Medium 
    STHeitiSC-Light 
---Iowan Old Style--- 
    IowanOldStyle-Italic 
    IowanOldStyle-Roman 
    IowanOldStyle-BoldItalic 
    IowanOldStyle-Bold 
---Courier New--- 
    CourierNewPS-BoldMT 
    CourierNewPS-ItalicMT 
    CourierNewPSMT 
    CourierNewPS-BoldItalicMT 
---Apple SD Gothic Neo--- 
    AppleSDGothicNeo-Bold 
    AppleSDGothicNeo-Thin 
    AppleSDGothicNeo-UltraLight 
    AppleSDGothicNeo-Regular 
    AppleSDGothicNeo-Light 
    AppleSDGothicNeo-Medium 
    AppleSDGothicNeo-SemiBold 
---Heiti TC--- 
    STHeitiTC-Medium 
    STHeitiTC-Light 
---Gill Sans--- 
    GillSans-Italic 
    GillSans-Bold 
    GillSans-BoldItalic 
    GillSans-LightItalic 
    GillSans 
    GillSans-Light 
---Marker Felt--- 
    MarkerFelt-Thin 
    MarkerFelt-Wide 
---Thonburi--- 
    Thonburi 
    Thonburi-Bold 
    Thonburi-Light 
---Avenir Next Condensed--- 
    AvenirNextCondensed-BoldItalic 
    AvenirNextCondensed-Heavy 
    AvenirNextCondensed-Medium 
    AvenirNextCondensed-Regular 
    AvenirNextCondensed-HeavyItalic 
    AvenirNextCondensed-MediumItalic 
    AvenirNextCondensed-Italic 
    AvenirNextCondensed-UltraLightItalic 
    AvenirNextCondensed-UltraLight 
    AvenirNextCondensed-DemiBold 
    AvenirNextCondensed-Bold 
    AvenirNextCondensed-DemiBoldItalic 
---Tamil Sangam MN--- 
    TamilSangamMN 
    TamilSangamMN-Bold 
---Helvetica Neue--- 
    HelveticaNeue-Italic 
    HelveticaNeue-Bold 
    HelveticaNeue-UltraLight 
    HelveticaNeue-CondensedBlack 
    HelveticaNeue-BoldItalic 
    HelveticaNeue-CondensedBold 
    HelveticaNeue-Medium 
    HelveticaNeue-Light 
    HelveticaNeue-Thin 
    HelveticaNeue-ThinItalic 
    HelveticaNeue-LightItalic 
    HelveticaNeue-UltraLightItalic 
    HelveticaNeue-MediumItalic 
    HelveticaNeue 
---Gurmukhi MN--- 
    GurmukhiMN-Bold 
    GurmukhiMN 
---Times New Roman--- 
    TimesNewRomanPSMT 
    TimesNewRomanPS-BoldItalicMT 
    TimesNewRomanPS-ItalicMT 
    TimesNewRomanPS-BoldMT 
---Georgia--- 
    Georgia-BoldItalic 
    Georgia 
    Georgia-Italic 
    Georgia-Bold 
---Apple Color Emoji--- 
    AppleColorEmoji 
---Arial Rounded MT Bold--- 
    ArialRoundedMTBold 
---Kailasa--- 
    Kailasa-Bold 
    Kailasa 
---Kohinoor Devanagari--- 
    KohinoorDevanagari-Light 
    KohinoorDevanagari-Medium 
    KohinoorDevanagari-Book 
---Sinhala Sangam MN--- 
    SinhalaSangamMN-Bold 
    SinhalaSangamMN 
---Chalkboard SE--- 
    ChalkboardSE-Bold 
    ChalkboardSE-Light 
    ChalkboardSE-Regular 
---Superclarendon--- 
    Superclarendon-Italic 
    Superclarendon-Black 
    Superclarendon-LightItalic 
    Superclarendon-BlackItalic 
    Superclarendon-BoldItalic 
    Superclarendon-Light 
    Superclarendon-Regular 
    Superclarendon-Bold 
---Gujarati Sangam MN--- 
    GujaratiSangamMN-Bold 
    GujaratiSangamMN 
---Damascus--- 
    DamascusLight 
    DamascusBold 
    DamascusSemiBold 
    DamascusMedium 
    Damascus 
---Noteworthy--- 
    Noteworthy-Light 
    Noteworthy-Bold 
---Geeza Pro--- 
    GeezaPro 
    GeezaPro-Bold 
---Avenir--- 
    Avenir-Medium 
    Avenir-HeavyOblique 
    Avenir-Book 
    Avenir-Light 
    Avenir-Roman 
    Avenir-BookOblique 
    Avenir-Black 
    Avenir-MediumOblique 
    Avenir-BlackOblique 
    Avenir-Heavy 
    Avenir-LightOblique 
    Avenir-Oblique 
---Academy Engraved LET--- 
    AcademyEngravedLetPlain 
---Mishafi--- 
    DiwanMishafi 
---Futura--- 
    Futura-CondensedMedium 
    Futura-CondensedExtraBold 
    Futura-Medium 
    Futura-MediumItalic 
---Farah--- 
    Farah 
---Kannada Sangam MN--- 
    KannadaSangamMN 
    KannadaSangamMN-Bold 
---Arial Hebrew--- 
    ArialHebrew-Bold 
    ArialHebrew-Light 
    ArialHebrew 
---Arial--- 
    ArialMT 
    Arial-BoldItalicMT 
    Arial-BoldMT 
    Arial-ItalicMT 
---Party LET--- 
    PartyLetPlain 
---Chalkduster--- 
    Chalkduster 
---Hiragino Kaku Gothic ProN--- 
    HiraKakuProN-W6 
    HiraKakuProN-W3 
---Hoefler Text--- 
    HoeflerText-Italic 
    HoeflerText-Regular 
    HoeflerText-Black 
    HoeflerText-BlackItalic 
---Optima--- 
    Optima-Regular 
    Optima-ExtraBlack 
    Optima-BoldItalic 
    Optima-Italic 
    Optima-Bold 
---Palatino--- 
    Palatino-Bold 
    Palatino-Roman 
    Palatino-BoldItalic 
    Palatino-Italic 
---Malayalam Sangam MN--- 
    MalayalamSangamMN-Bold 
    MalayalamSangamMN 
---Lao Sangam MN--- 
    LaoSangamMN 
---Al Nile--- 
    AlNile-Bold 
    AlNile 
---Bradley Hand--- 
    BradleyHandITCTT-Bold 
---Hiragino Mincho ProN--- 
    HiraMinProN-W6 
    HiraMinProN-W3 
---Trebuchet MS--- 
    Trebuchet-BoldItalic 
    TrebuchetMS 
    TrebuchetMS-Bold 
    TrebuchetMS-Italic 
---Helvetica--- 
    Helvetica-Bold 
    Helvetica 
    Helvetica-LightOblique 
    Helvetica-Oblique 
    Helvetica-BoldOblique 
    Helvetica-Light 
---Courier--- 
    Courier-BoldOblique 
    Courier 
    Courier-Bold 
    Courier-Oblique 
---Cochin--- 
    Cochin-Bold 
    Cochin 
    Cochin-Italic 
    Cochin-BoldItalic 
---Devanagari Sangam MN--- 
    DevanagariSangamMN 
    DevanagariSangamMN-Bold 
---Oriya Sangam MN--- 
    OriyaSangamMN 
    OriyaSangamMN-Bold 
---Snell Roundhand--- 
    SnellRoundhand-Bold 
    SnellRoundhand 
    SnellRoundhand-Black 
---Zapf Dingbats--- 
    ZapfDingbatsITC 
---Bodoni 72--- 
    BodoniSvtyTwoITCTT-Bold 
    BodoniSvtyTwoITCTT-Book 
    BodoniSvtyTwoITCTT-BookIta 
---Verdana--- 
    Verdana-Italic 
    Verdana-BoldItalic 
    Verdana 
    Verdana-Bold 
---American Typewriter--- 
    AmericanTypewriter-CondensedLight 
    AmericanTypewriter 
    AmericanTypewriter-CondensedBold 
    AmericanTypewriter-Light 
    AmericanTypewriter-Bold 
    AmericanTypewriter-Condensed 
---Avenir Next--- 
    AvenirNext-UltraLight 
    AvenirNext-UltraLightItalic 
    AvenirNext-Bold 
    AvenirNext-BoldItalic 
    AvenirNext-DemiBold 
    AvenirNext-DemiBoldItalic 
    AvenirNext-Medium 
    AvenirNext-HeavyItalic 
    AvenirNext-Heavy 
    AvenirNext-Italic 
    AvenirNext-Regular 
    AvenirNext-MediumItalic 
---Baskerville--- 
    Baskerville-Italic 
    Baskerville-SemiBold 
    Baskerville-BoldItalic 
    Baskerville-SemiBoldItalic 
    Baskerville-Bold 
    Baskerville 
---Khmer Sangam MN--- 
    KhmerSangamMN 
---Didot--- 
    Didot-Italic 
    Didot-Bold 
    Didot 
---Savoye LET--- 
    SavoyeLetPlain 
---Bodoni Ornaments--- 
    BodoniOrnamentsITCTT 
---Symbol--- 
    Symbol 
---Menlo--- 
    Menlo-Italic 
    Menlo-Bold 
    Menlo-Regular 
    Menlo-BoldItalic 
---Bodoni 72 Smallcaps--- 
    BodoniSvtyTwoSCITCTT-Book 
---DIN Alternate--- 
    DINAlternate-Bold 
---Papyrus--- 
    Papyrus 
    Papyrus-Condensed 
---Euphemia UCAS--- 
    EuphemiaUCAS-Italic 
    EuphemiaUCAS 
    EuphemiaUCAS-Bold 
---Telugu Sangam MN--- 
    TeluguSangamMN 
    TeluguSangamMN-Bold 
---Bangla Sangam MN--- 
    BanglaSangamMN-Bold 
    BanglaSangamMN 
---Zapfino--- 
    Zapfino 
---Bodoni 72 Oldstyle--- 
    BodoniSvtyTwoOSITCTT-Book 
    BodoniSvtyTwoOSITCTT-Bold 
    BodoniSvtyTwoOSITCTT-BookIt 
---DIN Condensed--- 
    DINCondensed-Bold 

两种字体被添​​加到plist并添加到构建阶段。

+1

请包括您用于实例化UIFont和您收到的错误的代码。 – 2014-09-19 21:48:12

+0

我打算把这些反馈放在一秒钟内,但我不认为这会有所帮助......当我打印出每个字体系列的所有不同字体时,字体就不存在了。我已将字体添加到plist并构建目标。 – GnarGnar 2014-09-20 02:45:01

您是否已将字体添加到您的Info.plist中。例如:

Fonts in plist file

+0

是的,就像我说过的,我可以在故事板中使用字体......这真的很奇怪。 – GnarGnar 2014-09-20 02:42:33

+0

*他们在那里:P – GnarGnar 2014-09-20 03:44:41

+0

你有没有把它整理出来?我很好奇这个问题是什么。 – 2014-09-22 01:48:39

所以我删除了从我的项目的字体,并重新装入它们,它的工作!

我不确定它是什么让它工作,但我去了article中的所有步骤。

您需要拉起字体,并将它们添加到您的info.plist中。换句话说,将它们下载到您的项目中,然后您将能够以编程方式访问它们,并且我相信通过视觉侧边栏的方式。

+0

你能否给我的答案增加一个例子? – 2016-05-01 18:40:04

将字体添加到Info.plist中。把它放在应用程序提供的字体

enter image description here

添加您的自定义字体在目标项目==>构建阶段==>复制包资源 enter image description here

使用代码自定义字体:

UILable *lblCostum = [[UILable alloc] initWithFrame:CGRectMake(295,60, 21, 20)]; 
lblCostum.font = [UIFont fontWithName:@"BirdsofParadise" size:12]; 

谢谢你你的守则并帮助我。带有Xcode 8的代码可能是:

for family in UIFont.familyNames { 
    print(" ---\(family)---") 
    for font in UIFont.fontNames(forFamilyName: family) { 
     print("  \(font)") 
    } 
}