StringFormatFlags 列挙体は、テキスト レイアウト情報 (向きやクリッピングなど) と表示操作 (省略記号の挿入、数字の置換、フォントでサポートされていない文字の表現など) を指定します。
構文
typedef enum StringFormatFlags {
StringFormatFlagsDirectionRightToLeft = 0x00000001,
StringFormatFlagsDirectionVertical = 0x00000002,
StringFormatFlagsNoFitBlackBox = 0x00000004,
StringFormatFlagsDisplayFormatControl = 0x00000020,
StringFormatFlagsNoFontFallback = 0x00000400,
StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
StringFormatFlagsNoWrap = 0x00001000,
StringFormatFlagsLineLimit = 0x00002000,
StringFormatFlagsNoClip = 0x00004000,
StringFormatFlagsBypassGDI = 0x80000000
} ;
Constants
StringFormatFlagsDirectionRightToLeft値: 0x00000001 読み取り順序を右から左に指定します。 水平テキストの場合、文字は右から左に読み取られます。 縦書きテキストの場合、列は右から左に読み取られます。 既定では、水平方向または垂直方向のテキストは左から右に読み取られます。 |
StringFormatFlagsDirectionVertical値: 0x00000002 個々のテキスト行をディスプレイ デバイスに垂直方向に描画することを指定します。 既定では、テキストの行は水平で、各行は前の行の下にあります。 |
StringFormatFlagsNoFitBlackBox値: 0x00000004 文字列のレイアウト四角形のオーバーハングを文字の一部に許可することを指定します。 既定では、文字は最初に四角形の境界内に配置され、境界をオーバーハングしている文字はすべて再配置され、オーバーハングが回避され、レイアウト四角形の外側のピクセルに影響が及ぶのを防ぐことができます。 斜体の小文字 F (f) は、部分が張り出している可能性がある文字の例です。 このフラグを設定すると、文字が上下の行に視覚的に揃えられますが、レイアウト四角形の外側にある文字の一部がクリップまたは塗りつぶされる可能性があります。 |
StringFormatFlagsDisplayFormatControl値: 0x00000020 Unicode レイアウト制御文字を代表文字と共に表示することを指定します。 |
StringFormatFlagsNoFontFallback値: 0x00000400 要求されたフォントでサポートされていない文字に代替フォントを使用することを指定します。 既定では、不足している文字は"フォントがありません" 文字 (通常は開いた四角形) と共に表示されます。 |
StringFormatFlagsMeasureTrailingSpaces値: 0x00000800 各行の末尾のスペースを文字列の測定に含めるかどうかを指定します。 既定では、〘 Graphics::MeasureString メソッドは、各行の末尾にあるスペースを除外します。 このフラグを設定して、その空間を測定に含めます。 |
StringFormatFlagsNoWrap値: 0x00001000 次の行へのテキストの折り返しを無効にすることを指定します。 NoWrap は、レイアウト四角形の代わりに原点が使用される場合に暗黙的に指定されます。 四角形内でテキストを描画する場合、既定では、テキストは四角形の境界内にある最後の単語境界で分割され、次の行に折り返されます。 |
StringFormatFlagsLineLimit値: 0x00002000 レイアウト四角形内にレイアウトされるのは線全体だけであることを指定します。 既定では、レイアウトはテキストの末尾まで、またはクリッピングの結果として表示される行がそれ以上表示されないまで続行されます。どちらか早い方が優先されます。 既定の設定では、行の高さの倍数全体ではないレイアウト四角形によって最後の行が部分的に隠されます。 線全体のみが表示されるようにするには、このフラグを設定し、少なくとも 1 行の高さと同じ高さのレイアウト四角形を指定するように注意してください。 |
StringFormatFlagsNoClip値: 0x00004000 レイアウトの四角形の上に張り出す文字と、レイアウト四角形の外側に広がるテキストを表示することを指定します。 既定では、レイアウト四角形の外側に広がるすべてのオーバーハング文字とテキストがクリップされます。 レイアウト四角形の外側に広がる末尾のスペース (行の末尾にあるスペース) はすべてクリップされます。 したがって、末尾のスペースが測定に含まれている場合、このフラグの設定は文字列の測定に影響します。 クリッピングが有効になっている場合、レイアウト四角形の外側に延びる末尾のスペースは測定に含まれません。 クリッピングが無効になっている場合、レイアウト四角形の外側にあるかどうかにかかわらず、すべての末尾のスペースが測定に含まれます。 |
StringFormatFlagsBypassGDI値: 0x80000000 |
注釈
複数のフラグ セットを使用すると、次の効果を組み合わせることができます。
- StringFormatFlagsDirectionVertical と StringFormatFlagsDirectionRightToLeft の両方を設定すると、テキストの個々の行が垂直方向に描画されます。 最初の行はレイアウト四角形の右端から始まります。2 行目のテキストは、最初の行の左側に表示されます。
- StringFormatFlagsDirectionVertical が設定され、StringFormatFlagsDirectionRightToLeft が設定されていない場合、テキストの個々の行が垂直方向に描画されます。 最初の行はレイアウト四角形の左端から始まります。2 行目のテキストは最初の行の右側にあります。
- StringFormatFlagsDirectionRightToLeft が設定され、StringFormatFlagsDirectionVertical が設定されていない場合、テキストの個々の行は水平で、読み取り順序は右から左になります。 この設定では、文字の表示順序は変更されず、文字の読み取り順序を指定するだけです。
Requirements
| Requirement | 価値 |
|---|---|
| サポートされる最小クライアント | Windows XP、Windows 2000 Professional [デスクトップ アプリのみ] |
| サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
| Header | gdiplusenums.h (Gdiplus.h を含む) |