プロが教えるわが家の防犯対策術!

Visual C# 2010 Express を使ってます。
FontDialogで適当なフォントを選択したところ、次の例外がでました。
「TrueType フォントのみがサポートされています。これは TrueType フォントではありません。」
RichTextBoxにFontを設定したいのですが、TrueType フォント以外のフォントは使えないのでしょうか。もし使えないのならFontDialogでTrueType フォント以外を非表示にする方法はあるのでしょうか。

A 回答 (3件)

>今、試してる所ですがフォントが変わりません



ほんとですね。私も試してみましたが、TextBox だと FixedSys になりましたが、RichTextBox だと「MS Pゴシック」になってしまいました。( RichTextBox のフォントは、RichTextBox の内容をコピーしてワードパットに貼り付けて確認 )
私にはお手上げですね・・・。
    • good
    • 0

失礼しました。

問題なのはラスタフォントなんですね。

ちょっと調べてみましたが、今まで全然気づかずにいたんですけど、.NET ってラスタフォントをサポートしてないみたいです。

http://msdn.microsoft.com/ja-jp/library/cc437520 …

API を使うとなんとかなるみたいです。↓
http://dobon.net/vb/bbs/log3-11/6149.html

この回答への補足

今、試してる所ですがフォントが変わりません、でもサイズ、太字、斜体、ストライクアウト、下線は設定できます。たぶんLOGFONTのlfFaceNameへのフォント名の設定の仕方に問題があると思うんですが、どうしたら出来るのかまだ分かりません。なのでTrueType以外のフォントが使えるかどうか確認できません。

補足日時:2011/04/29 22:54
    • good
    • 0

FontDialog については、FontDialog の AllowVectorFonts プロパティを False にすればいいんじゃないでしょうか。

この回答への補足

その方法では、同じ例外が出るフォントは表示されます。

それより、TrueTypeフォント以外のフォントが本当に使えないかどうかの方を重視しています。
メモ帳ですらTrueType以外のが使えるのに、プログラムからそれらが使えないというのは妙だと思うんです。

補足日時:2011/04/28 01:11
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!