2011-08-04 32 views
0

Mac用のフォントアプリケーションを作成しています。私は場所"/Library/Fonts/"からすべてのフォント名を得て、FontArrayという名前の配列にそれらを保存しました。私はNSTextViewのすべてのフォントをプレビューする必要があります。これはNSTextViewのコードです。英語以外の言語のフォントを設定する

NSTextView *textView=[[NSTextView alloc]initWithFrame:NSMakeRect(250,500,450,30)]; 
[textView setString:@"ABCDEFGHIJKLMMOPQRSTUVWXYZ"]; 
[textView setFont:[NSFont fontWithName:[FontArray objectAtindex:rowid] size:40]]; 

この関数は、テーブルビューの行がクリックされたときに呼び出されます。これは、すべての英語フォントで正しく動作します。しかし、英語以外のフォントをクリックすると、エラーが発生します。*** -[NSTextView setFont:]: nil NSFont given.このエラーを修正するにはどうすればコードを変更できますか?

+0

誰でも提案をお願いします... – Aravindhan

答えて

2

あなたは完全に間違った道を歩いています。フォントはフォントファイルではありません。あなたが発見したように、フォントファイルの中に含まれるフォントの名前は、ファイルの名前と必ずしも同じではありません。フォントファイルを直接操作するのではなく、NSFontManagerを使用してください。

+0

私に正しい方向を教えてくれてありがとう...私はNSFontManagerを試してみよう... – Aravindhan

+0

フォントファイルからフォント名を取得する方法は分かりますか? – Aravindhan

関連する問題