LOGFONT構造体

宣言文
Const LF_FACESIZE = 32

Type LOGFONT
    lfHeight As Long                            文字の高さ(論理単位)
                                                設定値に応じて次のように解釈する
                                                設定値が1以上のとき、デバイス単位に変換して
                                                   使用可能なフォントのセル高さに一致させる
                                                設定値が0のとき、使用可能なフォントのデフォルトの高さを使う
                                                設定値が0未満のとき、絶対値を使う以外は1以上のときと同じ
                                                   指定の高さを超えない最大のフォントを選択する
    lfWidth As Long                             文字の幅(論理単位)
                                                0のとき、標準的なプロポーション
    lfEscapement As Long                        回転角度(単位:1/10度)
                                                文字列全体のベースラインとX軸との角度
                                                lfOrientationと常に同じ角度を設定する
    lfOrientation As Long                       回転角度(単位:1/10度)
                                                文字列全体のベースラインとX軸との角度
    lfWeight As Long                            文字の線幅を指定する定数
    lfItalic As Byte                            イタリック体のとき1
    lfUnderline As Byte                         アンダーライン付きのとき1
    lfStrikeOut As Byte                         横線付きのとき1
    lfCharSet As Byte                           文字セットを指定する定数
                                                指定の文字セットが無い場合
                                                使用可能な別の文字セットが使われる
                                                特にlfFaceNameで指定したフォントを含む
                                                文字セットを指定しなければならない
    lfOutPrecision As Byte                      論理フォントからインストールしている
                                                実際のフォントに変換するとき
                                                フォントの特性を一致させる方法を指定する定数
    lfClipPrecision As Byte                     文字の一部がクリッピング領域の外側にあるとき
                                                その処理方法を指定する定数の組み合わせ(通常0)
    lfQualiy As Byte                            論理フォントからインストールしている
                                                実際のフォントに変換するとき
                                                優先する特性を指定する定数(通常0)
    lfPitchAndFamily As Byte                    下位2ビットにフォントのピッチ
                                                上位4ビットにフォントファミリを指定する
    lfFaceName As String * LF_FACESIZE          タイプフェース名
End Type
lfWeightの定数
FW_DONTCARE = 0                                 デフォルト
FW_THIN = 100                                   (以下、数値が大きくなるほど太字になる)
FW_EXTRALIGHT = 200
FW_ULTRALIGHT = FW_EXTRALIGHT
FW_LIGHT = 300
FW_NOMAL = 400
FW_REGULAR = FW_NOMAL
FW_MEDIUM = 500
FW_SEMIBOLD = 600
FW_DEMIBOLD = FW_SEMIBOLD
FW_BOLD = 700
FW_EXTRABOLD = 800
FW_ULTRABOLD = FW_EXTRABOLD
FW_HEAVY = 900
FW_BLACK = FW_HEAVY
lfCharSetの定数
ANSI_CHARSET = 0                                Windowsの標準文字セット
DEFAULT_CHARSET = 1                             デフォルトの文字セット
OEM_CHARSET = 255                               OEM文字セット(システムに依存する)
SHIFTJIS_CHARSET = 128                          シフトJIS文字セット
SYMBOL_CHARSET = 2                              シンボル文字セット
BALTIC_CHARSET = 186
CHINESEBIG5_CHARSET = 136
EASTEUROPE_CHARSET = 238
GREEK_CHARSET = 161
HANGEUL_CHARSET = 129
MAC_CHARSET = 77
RUSSIAN_CHARSET = 204
TURKISH_CHARSET = 162
lfOutPrecisionの定数
OUT_CHARCTER_PRECIS = 2                         (使わない)
OUT_DEFAULT_PRECIS = 0                          デフォルトの方法
OUT_DEVICE_PRECIS = 5                           同じ名前の複数のフォントをインストールしているとき
                                                デバイスフォントを使う
OUT_RASTER_PRECIS = 6                           同じ名前の複数のフォントをインストールしているとき
                                                ラスタフォントを使う
OUT_STRING_PRECIS = 1                           (ラスタフォントを検出したときの戻り値)
OUT_STROKE_PRECIS = 3                           ベクタフォントを使う
OUT_TT_ONLY_PRECIS = 7                          TrueTypeフォントのみを使う
                                                (TrueTypeフォントがないとき、デフォルトの方法になる)
OUT_TT_PRECIS = 4                               同じ名前の複数のフォントをインストールしているとき
                                                TrueTypeフォントを使う
lfClipPrecisionの定数
CLIP_DEFAULT_PRECIS = 0                         デフォルトの方法
CLIP_CHARCTER_PRECIS = 1                        (使わない)
CLIP_STROKE_PRECIS = 2                          (ラスタ・ベクタ・TrueTypeフォントを検出したときの戻り値)
CLIP_MASK = 15                                  (使わない)
CLIP_EMBEDDED = 128                             読取専用フォントを使う
CLIP_LH_ANGLES = 16                             フォントを回転するとき、左右どちらかに回転するかを指定するフラッグ
                                                (指定しないときに半時計回り)
CLIP_TT_ALWAYS = 32                             (使わない)
lfPitchAndFamilyの定数
DEFAULT_PITCH = 0                               デフォルトのピッチ
FIXED_PITCH = 1                                 固定ピッチ
VARIABLE_PITCH = 2                              可変ピッチ
FF_DECORATIVE = 80                              飾りフォント
FF_DONTCARE = 0                                 フォントファミリに分類する必要がないフォント
FF_MODERN = 48                                  固定幅ストローク、固定ピッチ、セリフあり・なし
FF_ROMAN = 16                                   可変幅ストローク、可変ピッチ、セリフあり・なし
FF_SCRIPT = 64                                  手書き風フォント
FF_SWISS = 32                                   可変幅ストローク、可変ピッチ、セリフなし
Const LF_FACESIZE = 32

Structure LOGFONT
    lfHeight As Integer                            文字の高さ(論理単位)
                                                設定値に応じて次のように解釈する
                                                設定値が1以上のとき、デバイス単位に変換して
                                                   使用可能なフォントのセル高さに一致させる
                                                設定値が0のとき、使用可能なフォントのデフォルトの高さを使う
                                                設定値が0未満のとき、絶対値を使う以外は1以上のときと同じ
                                                   指定の高さを超えない最大のフォントを選択する
    lfWidth As Integer                             文字の幅(論理単位)
                                                0のとき、標準的なプロポーション
    lfEscapement As Integer                        回転角度(単位:1/10度)
                                                文字列全体のベースラインとX軸との角度
                                                lfOrientationと常に同じ角度を設定する
    lfOrientation As Integer                       回転角度(単位:1/10度)
                                                文字列全体のベースラインとX軸との角度
    lfWeight As Integer                            文字の線幅を指定する定数
    lfItalic As Byte                            イタリック体のとき1
    lfUnderline As Byte                         アンダーライン付きのとき1
    lfStrikeOut As Byte                         横線付きのとき1
    lfCharSet As Byte                           文字セットを指定する定数
                                                指定の文字セットが無い場合
                                                使用可能な別の文字セットが使われる
                                                特にlfFaceNameで指定したフォントを含む
                                                文字セットを指定しなければならない
    lfOutPrecision As Byte                      論理フォントからインストールしている
                                                実際のフォントに変換するとき
                                                フォントの特性を一致させる方法を指定する定数
    lfClipPrecision As Byte                     文字の一部がクリッピング領域の外側にあるとき
                                                その処理方法を指定する定数の組み合わせ(通常0)
    lfQualiy As Byte                            論理フォントからインストールしている
                                                実際のフォントに変換するとき
                                                優先する特性を指定する定数(通常0)
    lfPitchAndFamily As Byte                    下位2ビットにフォントのピッチ
                                                上位4ビットにフォントファミリを指定する
    lfFaceName As String * LF_FACESIZE          タイプフェース名
End Structure