2012-02-02 40 views
1

我在我的應用程序中使用此字體時遇到問題。我有進口的宋體 - Narrow.ttf文件在我的資源和在info.plist中還增加了名稱爲遵循自定義Arial-Narrow.ttf字體集成

<key>UIAppFonts</key> 
<array> 
    <string>Arial-Narrow.ttf</string> 
</array> 

現在每當我試圖使用的字體在我的應用程序使用的代碼

titleLabel.font = [UIFont fontWithName:@"Arial-Narrow" size:28]; 

它不起作用。但是,如果我用相同的過程使用不同的字體,它將起作用。因此,任何人都可以解釋我在這裏失蹤的內容,或者我們是否允許在iPhone應用程序中使用Arial Narrow字體。

+0

試試這個[UIFont fontWithName:@「Arial Narrow」size:28]; – beryllium 2012-02-02 07:34:05

+0

我試過了,它也沒有工作。 – Arslan 2012-02-02 07:41:00

回答

1

好吧,我找到了解決方案。我使用這Library在我的應用程序中使用Arial-Narrow字體。因此,如果有任何相同問題的人可以使用以下步驟從此庫中受益。

1)從我上面提供的鏈接下載庫。
2)將FontLabel文件夾(包含其中的所有類)導入到您想要使用自定義字體的項目中。
3)導入自定義字體(即Arial-Narrow.ttf在我的情況下)文件到資源文件夾。您不需要在plist文件中添加字體文件名。
4)要使用自定義字體像

#import "FontLabel.h" 

5)使用此代碼自定義字體與你初始化這個FontLabel導入您的類的頭。

FontLabel *titleLabel = [[FontLabel alloc] initWithFrame:CGRectMake(10, 10, 0, 0) fontName:@"Arial-Narrow" pointSize:28.0f]; 

您可以探索此庫以獲取更多功能。

0

您是否正確檢查了字體名稱,字體名稱和文件名「Arial-Narrow.ttf」可能並不總是相同。要在appDelegate.m做到這一點 - >應用程序didFinishLaunchingWithOptions:方法中,編寫如下代碼,

NSLog("%@",[UIFont familyNames]); 

這將是你安裝了所有字體。還要記住的自定義字體可用的IOS 3.2

+0

是的,我做到了。 Arial-Narrow不適用於iPhone,這就是爲什麼我使用它的自定義文件。而我的應用程序支持4.0+ iOS。 – Arslan 2012-02-02 07:40:37

+1

我也有過這樣的場景,我嘗試了羅克韋爾字體,它工作,但是當我嘗試RockwellBold時,它沒有。我認爲一些字體在iPhone – rakeshNS 2012-02-02 07:47:37

+1

中不起作用@rakeshNS:這很可能是因爲粗體變體是單獨的字體。人們總是認爲字體總是以常規,斜體和粗體的形式出現,但實際上每個變體都是一個單獨的字體,您必須包含它。 – DarkDust 2012-02-02 08:06:37

0

如果您的字體在其名稱,即「世紀哥特式」(粗體)兩個字後,

你的代碼看起來應該是這樣

[UIFont fontWithName:@"CenturyGothic-Bold" size:14];