次の方法で共有


CFont::CreatePointFont

更新 : 2007 年 11 月

この関数には、タイプフェイスとポイント サイズを指定してフォントを作成する簡単な方法が用意されています。

BOOL CreatePointFont(
   int nPointSize,
   LPCTSTR lpszFaceName,
   CDC* pDC = NULL 
);

パラメータ

  • nPointSize
    フォント サイズを 1/10 ポイント単位で返します。たとえば 12 ポイントのフォントを指定するには 120 を渡します。

  • lpszFaceName
    フォントのタイプフェイス名を指定した NULL で終わる文字列へのポインタまたは CString オブジェクトです。この文字列の長さは 30 文字を超えることはできません。現在利用できるフォントを列挙するには、Windows の EnumFontFamilies 関数を使用できます。lpszFaceName が NULL のときは、GDI はデバイスに依存しないタイプフェイスを使います。

  • pDC
    nPointSize の高さを論理単位に変換するのに使う CDC オブジェクトへのポインタ。NULL を指定したときは、変換に画面デバイス コンテキストを使います。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

nPointSize の高さは、pDC で指される CDC オブジェクトを使って論理単位に自動的に変換されます。

CreatePointFont 関数を使って作成された 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.

CClientDC dc(this);

CFont font;
VERIFY(font.CreatePointFont(120, _T("Arial"), &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::CreatePointFontIndirect

CFont::CreateFont

その他の技術情報

CFont のメンバ