CFont::CreateFont

BOOL CreateFont ( int パラメーター nHeight, int nWidth, int nEscapement, int nOrientation, int nWeight, バイト bItalic, バイト bUnderline, バイト cStrikeOut, バイト nCharSet, バイト nOutPrecision, バイト nClipPrecision, バイト nQuality, バイト nPitchAndFamily, LPCTSTR lpszFacename );

戻り値

成功した場合は 0 だ。そうでなければ 0。

パラメーター

パラメーター nHeight

フォントの高さ (論理単位) を指定します。フォントの高さは、次の方法で指定することができます。:

nWidth

文字の平均の幅 (論理単位) でフォントを指定します。NWidthが 0 の場合は、デバイスの縦横比、差の絶対値によって決まります、最も近い一致を検索するには、使用可能なフォントのデジタル化の縦横比と一致します。

nEscapement

(0.1 度単位)、文字送りベクターとディスプレイ表示面の x 軸の間の角度を指定します。文字送りベクターは、行の最初と最後の文字の起源を行です。角度は x 軸から反時計回りに測定されます。

nOrientation

(0.1 度単位) 文字の基線と x 軸の間の角度を指定します。角度で y 方向と座標系の y 方向は上ですの x 軸から時計回りには座標系の x 軸から反時計回りに測定します。

nWeight

フォントの太さ (ピクセル単位 1000年単位) で指定します。NWeightは、0 から整数値 1000年にすることができますが、共通の定数と値のとおりです。:

定数
FW_DONTCARE 0
FW_THIN 100
FW_EXTRALIGHT 200
FW_ULTRALIGHT 200
FW_LIGHT 300
FW_NORMAL 400
FW_REGULAR 400
FW_MEDIUM 500
FW_SEMIBOLD 600
FW_DEMIBOLD 600
FW_BOLD 700
FW_EXTRABOLD 800
FW_ULTRABOLD 800
FW_BLACK 900
FW_HEAVY 900

これらの値は近似値である;実際の外観は、タイプフェイスによって異なります。一部のフォントはFW_NORMALFW_REGULAR、およびFW_BOLD重みがあります。FW_DONTCAREが指定されている場合は、既定のウエイトが使用されます。

bItalic

フォントが斜体かどうかを指定します。

bUnderline

フォントが下線付きかどうかを指定します。

cStrikeOut

フォントの文字が三振だかどうかを指定します。場合は、取り消し線フォントを指定しますが 0 以外の値に設定。

nCharSet

フォントの文字セットを指定します。次の定数と値があらかじめ定義されています:

定数
ANSI_CHARSET 0
DEFAULT_CHARSET 1
SYMBOL_CHARSET 2
SHIFTJIS_CHARSET 128
OEM_CHARSET 255

OEM 文字セットをシステムに依存します。

その他の文字セットのフォントがシステムに存在可能性があります。不明な文字セットのフォントを使用するアプリケーションは、翻訳またはそのフォントを使用して文字列を解釈できません。代わりに、文字列出力デバイス ドライバーに直接渡される必要があります。

フォント マッパーは、 DEFAULT_CHARSET値を使用しません。アプリケーションは、論理フォントを完全に記述するのにフォントのサイズと名前を許可するのにこの値を使用できます。指定された名前のフォントが存在しない場合は、任意の文字セットからのフォント指定のフォントを代用できます。予期しない結果を回避するには、アプリケーション、 DEFAULT_CHARSET値を控えめに使用する必要があります。

nOutPrecision

必要な出力精度を指定します。出力精度は、実際の出力が、要求されたフォントの高さ、幅、文字の方向、文字送り、およびピッチにどの程度一致する必要がありますを定義します。それは、次の値のいずれかをすることができます。:

OUT_CHARACTER_PRECIS OUT_STRING_PRECIS
OUT_DEFAULT_PRECIS OUT_STROKE_PRECIS
OUT_DEVICE_PRECIS OUT_TT_PRECIS
OUT_RASTER_PRECIS

アプリケーションでは、 OUT_DEVICE_PRECISOUT_RASTER_PRECIS、およびOUT_TT_PRECISの値を使用して、システムに 1 つ以上のフォントを指定された名前が含まれる場合に、フォント マッパー、フォントを選択する方法を制御することができます。たとえば、システム フォントのラスターおよび TrueType 形式でのシンボルの名前を含む場合は、 OUT_TT_PRECISを指定する TrueType バージョンを選択するには、フォント マッパーを強制的します。( OUT_TT_PRECISの指定がない場合でも、同じ名前の TrueType フォントは、指定されたフォント名デバイスと一致するときに TrueType フォントまたはラスター フォントを選択するには、フォント マッパー強制的)。

nClipPrecision

目的のクリッピング精度を指定します。クリッピング精度は、一部がクリッピング領域の外にある文字をクリップする方法を定義します。それは、次の値のいずれかをすることができます。:

CLIP_CHARACTER_PRECIS CLIP_MASK
CLIP_DEFAULT_PRECIS CLIP_STROKE_PRECIS
CLIP_ENCAPSULATE CLIP_TT_ALWAYS
CLIP_LH_ANGLES

埋め込み読み取り専用フォントを使用するには、アプリケーションCLIP_ENCAPSULATEを指定する必要があります。

一貫性のある回転デバイス、TrueType とベクター フォントを達成するには、アプリケーションCLIP_LH_ANGLES値、その他のnClipPrecision値のいずれかの結合に OR 演算子を使用することができます。CLIP_LH_ANGLESビットが設定されている場合は、すべてのフォントの回転は座標系の向きが左ききであるかどうかによって異なりますまたは右利き。(座標系の方向については、 nOrientationパラメーターの説明を参照してください)。CLIP_LH_ANGLESが設定されていない場合は、デバイス フォントは常に反時計回りに回転しますが、他のフォントの回転は座標系の向きに依存。

nQuality

どのように慎重に、GDI は実際の物理フォントの論理フォント属性と一致しようとする必要がありますを定義、フォントの出力品質を指定します。次の値の 1 つがそれをすることができます。:

nPitchAndFamily

ピッチとファミリのフォントを指定します。2 つの下位ビット フォントのピッチを指定し、次の値のいずれかをすることができます。:

DEFAULT_PITCH VARIABLE_PITCH FIXED_PITCH

アプリケーションは、TrueType フォントを選択するには、 nPitchAndFamilyパラメーターにTMPF_TRUETYPEを追加できます。4 つの上位ビットは、パラメーターのフォント ファミリを指定して、次の値のいずれかをすることができます。:

lpszFacename

フォントのタイプフェイス名を指定する null で終わる文字列へのポインターまたはcstring オブジェクト。この文字列の長さは 30 文字をを超えてはなりません。Windows EnumFontFamilies関数は、すべての現在利用可能なフォントを列挙を使用できます。LpszFacenameNULLの場合は、デバイスに依存しないフォント、GDI を使用します。

解説

指定した特性でCFontオブジェクトを初期化します。フォントをその後、任意のデバイス コンテキストのフォントとして選択できます。

CreateFont関数では、新しい Windows GDI フォントは作成されません。それだけ近いで gdi の物理フォントの使用可能なフォントから選択します。

アプリケーションは、論理フォントを作成するときにこれらのパラメーターのほとんどは、既定の設定をできます。常に特定の値を与えられるべきパラメーター nHeightlpszFacenameです。パラメーター nHeightlpszFacenameによってアプリケーションが設定されていない場合は、作成した論理フォントをデバイス依存です。

CreateFont関数によって作成された、 CFontオブジェクトを終了すると、まず、デバイス コンテキストのフォントを選択し、 CFontオブジェクトを削除。

CFont の概要|nbsp;クラス メンバー |階層図(&N)

参照特価;CFont::CreateFontIndirectCFont::CreatePointFont :: CreateFont :: EnumFontFamilies :: EnumFonts(&N)

Index