- - PR -
フォントが等幅かプロポーショナルか調べる
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-11-02 05:17
あるフォントを選択し、それが 等幅フォントか それとも プロポーショナルフォントか を調べることは出来ますか?。
Fontクラスのプロパティやメソッドの中にはそれらしいものは見つからなかったのですが・・・ 言語は C#(.NET 2.0)です。 | ||||
|
投稿日時: 2006-11-02 08:39
GetTextMetricsメソッドはどうでしょう?
(使ったことはないのでサンプルを示せませんが...) _________________ -------------------------------------------- HIRO's.NET PowerShell,VB.NET,C#のTipsを掲載しています HIRO's.NET Blog PowerShell,VB.NET,C#を中心とした技術ネ | ||||
|
投稿日時: 2006-11-02 09:08
こんにちは。
試したこと無いですが、LOGFONT構造体のPitchAndFamilyを見れば調べられるんじゃないでしょうか。 Font.ToLogFont メソッドが使えそうですが、 「このメソッドでは UnmanagedCode アクセス許可が要求されます。」 とあります。 APIを使うんだったら、GDI の GetObjectでLOGFONTが取得できそうです。 | ||||
|
投稿日時: 2006-11-02 09:19
厳密には等幅フォントとプロポーショナルフォントの区別は無かったと思います。全てがプロポーショナルフォントです。例えば一見等幅フォントに見えるMSゴシックも文字サイズによっては微妙にずれる事になりますよね。
もし行うとしたら文字幅を取得して比較するとか・・・ | ||||
|
投稿日時: 2006-11-08 00:58
皆さん、アドバイスをありがとうございます。
GraphicsのMeasureStringメソッドを使って二つの違う文字の幅を比べて調べるという手を使いました。 |
1