我使用this方法在我的iPhone應用程序中嵌入自定義字體。UILabel自定義字體顯示*錯誤*自定義字體
嵌入工作原理:當我運行下面的代碼時,列出了字體。 (目前,我嵌入OTF格式無數臨的所有家庭成員)
for(NSString *familyName in [UIFont familyNames]){
for(NSString *fntName in [UIFont fontNamesForFamilyName:familyName]){
NSLog(@"%@", fntName);
}}
當我嘗試設置標籤MyriadPro或MyriadPro粗體的字體,如預期該工作而已。但是,當我將字體設置爲MyriadPro-BoldCond時,標籤仍然以MyriadPro-Bold而不是濃縮版本設置。 (字體名稱正確,我查了。)我的代碼:
[recommendationLabel setFont:[UIFont fontWithName:@"MyriadPro-BoldCond" size:140]];
recommendationLabel.adjustsFontSizeToFitWidth = YES;
這是怎麼回事?
編輯:除了下面的Ingve解決方案,我發現 - 至少對於Myriad Pro - 只要我從plist中刪除未使用的字體,就會顯示正確的字體變體。在這種情況下,我需要刪除MyriadPro-SemiBold。 Mindboggling。
似乎很有趣。我會盡力回報。 – winsmith 2011-01-09 12:09:17
我又回來了。使用核心文本確實有效。然而,與使用NSLabel相比,這是相當多的工作,特別是如果您已經像我一樣使用Interface Builder來佈局您的應用程序。 – winsmith 2011-01-10 06:29:44