次の方法で共有


CFont::CreatePointFontIndirect

この関数は CreateFontIndirect と同じですが、LOGFONTlfHeight のメンバーは、デバイス単位ではなくポイントの 1/10 で解釈されます。

BOOL CreatePointFontIndirect(
   const LOGFONT* lpLogFont,
   CDC* pDC = NULL 
);

パラメーター

  • lpLogFont
    LOGFONT をポイントし、構成する論理フォントの特性を定義する。LOGFONT の構造体のメンバーは lfHeight の論理単位ではなくポイントの 1/10 で測定されます。(12 ポイントのフォントを要求するに lfHeight を 120 に設定します。)

  • pDC
    論理単位に lfHeight の高さの変換に使用される CDC オブジェクトへのポインター。nullが変換では、画面のデバイス コンテキスト使用されます。

戻り値

成功した場合、は 0 以外を返します。

解説

この関数は、Windows に LOGFONT の構造体を渡す前に pDC によってに指す CDC のオブジェクトを使用して論理単位に自動的に lfHeight の高さを変換します。

CreatePointFontIndirect の関数によって作成された CFont のオブジェクトを使い終わったら、最初にフォントをデバイス コンテキストから選択して CFont のオブジェクトを削除します。

使用例

// The code fragment shows how to create a font object,
// select the font object into a DC (device context) for text
// drawing, and finally delete the font object.
LOGFONT lf;

// clear out structure.
memset(&lf, 0, sizeof(LOGFONT));

// request a 12-pixel-height font
lf.lfHeight = 120;

// request a face name "Arial".
_tcsncpy_s(lf.lfFaceName, LF_FACESIZE, _T("Arial"), 7);  

CClientDC dc(this);

CFont font;
VERIFY(font.CreatePointFontIndirect(&lf, &dc));   

// Do something with the font just created...
CFont* def_font = dc.SelectObject(&font);
dc.TextOut(5, 5, _T("Hello"), 5);
dc.SelectObject(def_font);

// Done with the font. Delete the font object.
font.DeleteObject();

必要条件

ヘッダー: afxwin.h

参照

関連項目

CFont クラス

階層図

CFont::CreatePointFont

CFont::CreateFontIndirect