Win32API: CreateFont

論理フォントを作成します。


定義
Declare Function CreateFont Lib "gdi32" Alias "CreateFontA" _
   (nHeight As Long, _
    nWidth As Long, _
    nEscapement As Long, _
    nOrientation As Long, _
    fnWeight As Long, _
    fdwItalic As Long, _
    fdwUnderline As Long, _
    fdwStrikeOut As Long, _
    fdwCharSet As Long, _
    fdwOutputPrecision As Long, _
    fdwClipPrecision As Long, _
    fdwQuality As Long, _
    fdwPitchAndFamily As Long, _
    lpszFace As BytePtr) As HFONT
nHeight
フォントの高さを論理単位で指定します。
0 以上のときは、文字セルの高さを示します。
0 のときは、デフォルトの高さになります。
0 以下のときは、文字の高さ(文字セルからスペース部分を取り除いた高さ)を示します。

nWidth
フォントの幅を論理単位で指定します。
0 を指定すると、lfHeight メンバで指定した高さに見合った幅が、自動的に指定されます。

nEscapement
行の角度を 0.1 単位で指定します。デフォルトは 0 です。

nOrientation
ベースラインの角度を 0.1 単位で指定します。デフォルトは 0 です。

fnWeight
フォントの太さを、以下の定数から指定します。
定数
FW_DONTCARE0
FW_THIN100
FW_EXTRALIGHT200
FW_ULTRALIGHT200
FW_LIGHT300
FW_NORMAL400
FW_REGULAR400
FW_MEDIUM500
FW_SEMIBOLD600
FW_DEMIBOLD600
FW_BOLD700
FW_EXTRABOLD800
FW_ULTRABOLD800
FW_HEAVY900
FW_BLACK900

fdwItalic
1 を指定するとイタリック体になります。デフォルトは 0 です。

fdwUnderline
1 を指定すると下線付きのフォントになります。デフォルトは 0 です。

fdwStrikeOut
1 を指定すると、打消しライン付きのフォントになります。デフォルトは 0 です。

fdwCharSet
キャラクタセットを、以下の定数から指定します。
定数説明
ANSI_CHARSETWindows 文字セット
BALTIC_CHARSET
CHINESEBIG5_CHARSET
DEFAULT_CHARSET指定なし
EASTEUROPE_CHARSET
GB2312_CHARSET
GREEK_CHARSET
HANGUL_CHARSET
MAC_CHARSET
OEM_CHARSETOEM 文字セット
RUSSIAN_CHARSET
SHIFTJIS_CHARSETシフト JIS 文字セット
SYMBOL_CHARSET
TURKISH_CHARSET
JOHAB_CHARSET韓国版 Windows 用文字セット
THAI_CHARSETタイ版 Windows 用文字セット

fdwOutputPrecision
出力精度を、以下の定数から指定します。
定数説明
OUT_CHARACTER_PRECIS使用されません。
OUT_DEFAULT_PRECISデフォルトの動作に任せます。
OUT_DEVICE_PRECIS同じ名前のフォントが見つかったときは、デバイス フォントを使用します。
OUT_OUTLINE_PRECIS同じ名前のフォントが見つかったときは、TrueType や他のアウトラインベースのフォントを使用します(WindowsNT系OSのみ)。
OUT_RASTER_PRECIS同じ名前のフォントが見つかったときは、ラスタ フォントを使用します。
OUT_STRING_PRECIS使用されません。
OUT_STROKE_PRECIS同じ名前のフォントが見つかったときは、ベクトル フォントを使用します(Windows9x系OSのみ)。
OUT_TT_PRECIS同じ名前のフォントが見つかったときは、TrueType フォントを使用します。
OUT_TT_ONLY_PRECISTrueType フォントを使用します。TrueType フォントが組み込まれていないときは、デフォルトの動作になります。

fdwClipPrecision
クリッピング精度を、以下の定数から指定します。
定数説明
CLIP_DEFAULT_PRECISデフォルトの動作に任せます。
CLIP_CHARACTER_PRECIS使用されません。
CLIP_STROKE_PRECIS使用されません。
CLIP_MASK使用されません。
CLIP_EMBEDDED読み込み専用の埋め込みフォントです。
CLIP_LH_ANGLES座標系が右手座標系か左手座標系かによって、すべてのフォントの回転方向を決めるようにします。
CLIP_TT_ALWAYS使用されません。

fdwQuality
出力品質を、以下の定数から指定します。
定数説明
DEFAULT_QUALITYフォントの文字品質は、重視されません。
DRAFT_QUALITYフォントの文字品質は、PROOF_QUALITY フラグを指定したときほど重視されません。
PROOF_QUALITYフォントの文字品質は、論理フォントの属性を正確に一致させることよりも重視されます。

fdwPitchAndFamily
フォントのピッチ、およびファミリーを、以下の定数を組み合わせて指定します。
定数説明
DEFAULT_PITCHピッチはデフォルトの動作に任せます。
FIXED_PITCHピッチは固定長になります。
VARIABLE_PITCH ピッチは可変長になります。
FF_DECORATIVE装飾付きフォントが指定されます(Old English など)。
FF_DONTCARE一般的なファミリが指定されます。
FF_MODERNモノスペース フォントが指定されます(Pica、Elite、CourierNewなど)。
FF_ROMANセリフ(H、I などの上下にあるひげ飾り)のあるプロポーショナルフォントが指定されます(Times New Roman など)。
FF_SCRIPT手書き風のデザインのフォントが指定されます(Script、Cursive など)。
FF_SWISSセリフ(H、I などの上下にあるひげ飾り)のないプロポーショナルフォントが指定されます()。

lpszFace
フォント名を示す文字列を指定します。

戻り値

関数が成功すると、作成されたフォントのハンドルが返ります。失敗すると、0 が返ります。

解説

不要になったフォントはDeleteObject関数を使用して解放して下さい。

環境情報

インクルード ファイル: api_gdi.sbp 内で定義済み
DLLファイル: gdi32.dll


CreateFontIndirect関数