|
>どの「秀丸」のバージョンからは覚えていませんが、
>でも、「秀丸」は Terminal のフォントサイズを表示してくるんです。
なるほど、手元はいまだ 3.05 ですが、確かに選択肢に 9.8 がありますね。
>どのような Windows の API とか、「秀丸」独自のアルゴリズムとか、
>は知りません。
確かに、秀丸が裏で何をやっているかは判りませんね。
それにあのフォントの選択で選ぶ数字が何を示しているのかもわかりません。
とりあえず "Terminal" で EnumFontFamiliesEx API を呼ぶと、8x18, 4x6, 5x12, 6
x8, 7x12, 10x18, 12x16, 3x5, 5x8, 6x13, 8x18, 10x22, 12x27, 8x12, 16x12, 8x8,
16x8 が得られました。( Windows2000 )
秀丸の表示は 3.8, 4.5, 6, 9, 9.8, 12, 13.5, 16.5, 20.3 でした。
"FixedSys" だと API は 8x18 を返し、秀丸は 13.5 を表示しています。
API で得られた高さの 0.75 倍を秀丸は表示しているようですね。
0.75 倍...というと、私の環境は「小さいフォント」なので、ちょうど利用している
POINT:PIXEL の比率ですね。
ということで、秀丸は「フォントの高さをポイント数で表示している」のであれば 9.
8 はビットマップフォントに実在しているサイズを示している可能性が高いですね。
ただ、9.8 は 13 × 0.75 = 9.75 から切り上げた値なんでしょう、そのまま 9.8 と
いう「切り上げた値」をフォントサイズの指定の演算元に利用していないならばフォ
ントサイズが原因ではなさそうですね。
# TrueType Font なら 9.8 のまま利用しても問題ないんですが BitmapFont は 9.7
5 として扱わないと確実にズレますから...
最後に、問題の症状は私の Windows2000 + 秀丸 3.05 の環境でも再現します。
|
|