stuncloud/UWSCR

FUKIDASI : 指定通りのフォントサイズで表示しない。

Closed this issue · 1 comments

概要

FUKIDASI:サイズ指定の数値に従って大きさは変わるものの、指定サイズより可成り小さい。

再現スクリプト

No response

再現手順

No response

バージョン

1.0.0

不具合発生環境

Windows 10

サイズ値をそのままCreateFontWcheightに渡していたのが問題
以下でサイズ値 (ポイント) をピクセルに変換する必要がある
また、cheightは負の数にする必要があった

unsafe fn point_to_pixel(point: i32) -> i32 {
    let hdc = Gdi::GetDC(None);
    let ppi = Gdi::GetDeviceCaps(hdc, Gdi::LOGPIXELSY);
    -(point * ppi / 72)
}

修正後の表示をメモ帳と比較 (Yu Gothic UI, 20)
image