フォントサイズに10ptを指定しても9.75ptになる
コントロールのプロパティでフォントサイズに10ptを指定すると自動的に9.75ptに変わる。
これはWindows上の画面設定が通常の96dpiの場合、72pt / 96dpi = 0.75 pt/dot となり、1ドット当たりの大きさは 0.75(3/4)ポイントで丸められるという仕様によるものらしい。
ちなみに、MSゴシックでは16ptまでビットマップフォントを持っているので17ptからアンチエイリアスされる。しかしClearTypeは有効にならない。ClearTypeはビットマップフォントを持つものは対象にしないからだ。
http://tomtia.plala.jp/PC/ttfont/
ぱっと見MS明朝も同じサイズになるみたい。
解像度が96dpi限定でこんなコードでフォントのピクセル数を計算してみた
''' <summary> ''' フォントサイズから表示ピクセル数を算出します。 ''' </summary> ''' <param name="input">対象のコントロール</param> ''' <returns></returns> ''' <remarks></remarks> Private Shared Function CalcFontSize(ByVal input As Control) As Integer Return CInt(Math.Ceiling(input.Font.SizeInPoints * 2.0F / 3.0F)) End Function