我想要一個包含自定義字體的應用程序,用於呈現文本,加載文本,而後將其與UILabel
等標準UIKit
元素一塊兒使用。 這可能嗎? app
我已將本頁上的一些建議合併爲適用於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
首先將.odt格式的字體添加到您的資源中,在這種狀況下,咱們將使用DINEngschriftStd.otf,而後使用此代碼將字體分配給標籤 ip
[theUILabel setFont:[UIFont fontWithName:@"DINEngschriftStd" size:21]];
要確保您的字體已加載到項目中,只需調用 資源
NSLog(@"Available Font Families: %@", [UIFont familyNames]);
在.plist上,您必須聲明字體。 只需添加「應用程序提供的字體」記錄並添加帶有字體名稱的項目0字符串(DINEngschriftStd.otf) 字符串
在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]];
您能夠在資源文件夾中添加所需的「 FONT」文件。 而後轉到Project Info.plist
文件,並使用「應用程序提供的字體」鍵和值做爲「字體名稱」。
而後,您能夠調用方法[UIFont fontwithName:@"FONT NAME" size:12];
我使一切成爲可能,可是新字體沒有出現,因此我找到了解決方案:
當您拖動fot文件(otf或ttf)時,不要忘記選中「添加到目標」下的複選框。
完成後,您的字體將出現,而且一切正常。