特定のフォント (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?
}
特定のフォント (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?
}
がありGetCharABCWidths
ますが、カーニングについては説明していないことに注意してください。そのため、情報をどうするかによって、役立つ場合とそうでない場合があります。
実際のテキスト文字列の幅が必要な場合は、 など、幅を測定する関数がいくつかありますGetTextExtentPoint32
。これらの関数には、カーニング修正が含まれます。