我能夠在iPhone應用程序中嵌入自定義字體嗎?

我想要一個包含自定義字體的應用程序,用於呈現文本,加載文本,而後將其與UILabel等標準UIKit元素一塊兒使用。 這可能嗎? app


#1樓

我已將本頁上的一些建議合併爲適用於iOS 5的內容。 ide

首先,您必須將自定義字體添加到您的項目。 而後,您須要遵循@iPhoneDev的建議,並將字體添加到info.plist文件中。 字體

完成此操做後,它將起做用: spa

UIFont *yourCustomFont = [UIFont fontWithName:@"YOUR-CUSTOM-FONT-POSTSCRIPT-NAME" size:14.0];
[yourUILabel setFont:yourCustomFont];

可是,您須要知道字體的Postscript名稱。 在FontBook中時,只需遵循@Daniel Wood的建議並按Command-i。 .net

而後,享受您的自定義字體。 code


#2樓

首先將.odt格式的字體添加到您的資源中,在這種狀況下,咱們將使用DINEngschriftStd.otf,而後使用此代碼將字體分配給標籤 ip

[theUILabel setFont:[UIFont fontWithName:@"DINEngschriftStd" size:21]];

要確保您的字體已加載到項目中,只需調用 資源

NSLog(@"Available Font Families: %@", [UIFont familyNames]);

在.plist上,您必須聲明字體。 只需添加「應用程序提供的字體」記錄並添加帶有字體名稱的項目0字符串(DINEngschriftStd.otf) 字符串


#3樓

在Info.plist中,添加條目「應用程序提供的字體」,並將字體名稱包含爲字符串: get

Fonts provided by application
           Item 0        myfontname.ttf
           Item 1        myfontname-bold.ttf
           ...

而後運行如下命令來檢查字體是否包含在內:

for (NSString *familyName in [UIFont familyNames]) {
    for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {
         NSLog(@"%@", fontName);
    }
}

請注意,您的ttf文件名可能與設置標籤字體時使用的名稱不一樣(能夠使用上面的代碼獲取「 fontWithName」參數):

[label setFont:[UIFont fontWithName:@"MyFontName-Regular" size:18]];

#4樓

您能夠在資源文件夾中添加所需的「 FONT」文件。 而後轉到Project Info.plist文件,並使用「應用程序提供的字體」鍵和值做爲「字體名稱」。

而後,您能夠調用方法[UIFont fontwithName:@"FONT NAME" size:12];


#5樓

我使一切成爲可能,可是新字體沒有出現,因此我找到了解決方案:

當您拖動fot文件(otf或ttf)時,不要忘記選中「添加到目標」下的複選框。

完成後,您的字體將出現,而且一切正常。

相關文章
相關標籤/搜索