1

特定のフォント (Arial など) から文字の幅を取得する必要があります。境界ボックスの幅のみ、間隔なし。

HFONT font = CreateFont(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, L"Arial");

作成した HFONT を使用して、この情報を抽出する方法はありますか?

int MyGetCharWidth(HFONT font, wchar_t wch)
{
    // How to implement this?
}
4

2 に答える 2

2

がありGetCharABCWidthsますが、カーニングについては説明していないことに注意してください。そのため、情報をどうするかによって、役立つ場合とそうでない場合があります。

実際のテキスト文字列の幅が必要な場合は、 など、幅を測定する関数がいくつかありますGetTextExtentPoint32。これらの関数には、カーニング修正が含まれます。

于 2013-04-10T16:20:51.533 に答える