2

iPhoneアプリでカスタムフォントを使用しようとしていますが、どういうわけか読み込まれません。問題の始まりとしてアプリをまったく信じていません。

「My Font.ttf」を xcode にドラッグ アンド ドロップし、UIAppFonts でキーを作成しました。最初の質問: これら 2 つの名前は厳密に同一である必要があると思います。つまり、キーは正確なファイル名を表示する必要があるため、拡張子 ".ttf" を付けて表示する必要があります...? 大文字/小文字の場合はどうですか?ファイル名にスペースが含まれている場合はどうなりますか...?

次に、これを使用します:

NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]];
NSLog(@"Fonts: %@", [UIFont familyNames]);
[familyNames release];

すべてのフォントを表示し、私のフォントがそこにないことを明確に確認するには....

次に、それを以下で使用すると、何も機能しません(確かに):

lblSol1.font = [UIFont fontWithName:@"My Font" size:32];

(Arial に置き換えると機能するので、フォントの読み込みと関係があるとしか思えません...)

-fontWithName で使用する名前は、ファイル名とは異なる可能性があることを理解しました(実際には、情報ウィンドウで開いたときのフォント「フルネーム」の名前です)。とにかく、私は今までにすべての組み合わせを試しましたが、うまくいきません...

(また、iOS 4.o 用に展開してビルドし、万が一の場合に 3.2 から遠く離れていることを確認しました..)

ご協力いただきありがとうございます。

乾杯、ジービー

EDIT1: フォントを表示した結果 (求められたとおり) は次のとおりです。 Sangam MN"、"Marker Felt"、"Courier New"、Courier、"Trebuchet MS"、"DB LCD Temp"、"Apple Color Emoji"、"Arial Rounded MT Bold"、"Bangla Sangam MN"、"Telugu Sangam MN" "、"American Typewriter"、Arial、Kailasa、AppleGothic、"ヒラギノ角ゴシック ProN"、"Heiti SC"、"Malayalam Sangam MN"、Thonburi、Helvetica、Noteworthy、"Gujarati Sangam MN"、"Heiti K"、Futura、「Devanagari Sangam MN」、「Heiti TC」、「Sinhala Sangam MN」、「Kannada Sangam MN」、Georgia、「Heiti J」、「Times New Roman」、「Snell Roundhand」、「Geeza Pro」、「Helvetica」ノイエ」

4

1 に答える 1

1

ここのドキュメントによると:UIAppFonts

UIAppFonts (Array - iOS) は、通常のメカニズムで使用可能にする必要があるアプリケーション提供のフォントを指定します。配列内の各項目は、アプリケーションのバンドルにあるフォント ファイルの名前 (ファイル拡張子を含む) を含む文字列です。システムは、指定されたフォントをロードし、アプリケーションの実行時にアプリケーションで使用できるようにします。

このキーは iOS 3.2 以降でサポートされています。

はい、ファイル名拡張子を含める必要があります。

于 2011-11-26T23:38:36.980 に答える