Microsoft DirectX 8.0 (Visual Basic)

CONST_DTFLAGS

テキストの描画に使用するフラグを定義する。

Enum CONST_DTFLAGS
    DT_LEFT                 =       0
    DT_TOP                  =       0
    DT_CENTER               =       1
    DT_RIGHT                =       2
    DT_VCENTER              =       4
    DT_BOTTOM               =       8
    DT_WORDBREAK            =      16 (&H10)
    DT_SINGLELINE           =      32 (&H20)
    DT_EXPANDTABS           =      64 (&H40)
    DT_TABSTOP              =     128 (&H80)
    DT_NOCLIP               =     256 (&H100)
    DT_EXTERNALLEADING      =     512 (&H200)
    DT_CALCRECT             =    1024 (&H400)
    DT_NOPREFIX             =    2048 (&H800)
    DT_INTERNAL             =    4096 (&H1000)
    DT_EDITCONTROL          =    8192 (&H2000)
    DT_PATH_ELLIPSIS        =   16384 (&H4000)
    DT_END_ELLIPSIS         =   32768 (&H8000)
    DT_MODIFYSTRING         =   65536 (&H10000)
    DT_RTLREADING           =  131072 (&H20000)
    DT_WORD_ELLIPSIS        =  262144 (&H40000)
    DT_NOFULLWIDTHCHARBREAK =  524288 (&H80000)
    DT_HIDEPREFIX           = 1048576 (&H100000)
    DT_PREFIXONLY           = 2097152 (&H200000)End Enum

定数

DT_LEFT
テキストを左端揃えにする。
DT_TOP
先頭行のテキストを両端揃えにする (1 行のみ)。
DT_CENTER
四角形内でテキストを水平方向で中央揃えにする。
DT_RIGHT
テキストを右端揃えにする。
DT_VCENTER
上下方向でテキストを中央揃えにする (1 行のみ)。
DT_BOTTOM
四角形の底部でテキストを両端揃えにする。この値は DT_SINGLELINE と組み合わせて使用しなければならない。
DT_WORDBREAK
語を分割する。語が DestRect パラメータで指定した四角形の端を超える場合、語と語の間で自動的に改行される。改行/行送りのシーケンスも改行となる。
DT_SINGLELINE
1 行のみにテキストを表示する。改行と行送りで新しい行に移らない。
DT_EXPANDTABS
タブ文字を拡張する。タブごとのデフォルトの文字数は 8 字である。DT_WORD_ELLIPSIS、DT_PATH_ELLIPSIS、および DT_END_ELLIPSIS は DT_EXPANDTABS と同時に使用することはできない。
DT_TABSTOP
タブ ストップを設定する。Format パラメータのビット 15-8 (低位語の高次バイト) により各タブの文字数を指定する。タブごとのデフォルトの文字数は 8 字である。DT_CALCRECT、DT_EXTERNALLEADING、DT_INTERNAL、DT_NOCLIP、および DT_NOPREFIX は DT_TABSTOP と同時に使用することはできない。
DT_NOCLIP
クリッピングせずに描画する。DrawTextW は DT_NOCLIP を使用する場合よりやや高速である。
DT_EXTERNALLEADING
行の高さにフォントの外部余白を含める。通常、外部余白は、テキストの行の高さには含まれない。
DT_CALCRECT
四角形の幅と高さを算出する。テキストが複数行ある場合、DrawTextW は パラメータ SrcRect が参照する四角形の幅を使用し、テキストの最後の行が含まれるよう四角形の底辺を延長する。テキストが 1 行だけの場合、DrawTextW は行の最後の文字が収まるよう四角形の右側の辺の位置を修正する。どちらの場合も、DrawTextW は整形されたテキストの高さを返すが、テキストは描画しない。
DT_NOPREFIX
プレフィクス文字の処理をオフにする。通常、DrawTextW はニーモニック プレフィクス文字の & (アンパサンド) を、その後に続く文字に下線を付ける命令として解釈し、ニーモニック プレフィクス文字が && と 2 つ続いた場合は、& を 1 つ出力する命令として解釈する。DT_NOPREFIX を指定することにより、この処理はオフになる。「DT_HIDEPREFIX」および「DT_PREFIXONLY」を参照すること。
DT_INTERNAL
システム フォントを使用してテキスト メトリクスを計算する。
DT_EDITCONTROL
マルチライン エディット コントロールのテキスト表示特性を複製する。特に、平均の文字幅はエディット コントロールと同じ方法で計算され、部分的に見える最後の行は表示されない。
DT_END_ELLIPSIS または DT_PATH_ELLIPSIS
省略記号を追加せずに文字列を切り捨て、指定した四角形に収まるようにする。DT_MODIFYSTRING フラグが指定されている場合を除き、文字列は修正されない。

DT_END_ELLIPSIS は文字列の最後で文字を切り捨てるために指定する。DT_PATH_ELLIPSIS は文字列の中間で文字を切り捨てるために指定する。文字列にバックスラッシュ (\) が含まれている場合、DT_PATH_ELLIPSIS は最後のバックスラッシュより後ろにあるテキストをできるだけ多く保持する。

DT_MODIFYSTRING
文字列を修正して表示されたテキストに合わせる。DT_END_ELLIPSIS または DT_PATH_ELLIPSIS が指定されている場合のみ、このフラグは有効となる。
DT_RTLREADING
ヘブライ語またはアラビア語のフォントが選択されている場合、読みの順序が双方向のテキストについて右から左の順に読むようテキストを表示する。デフォルトの読みの順序は、すべてのテキストで左から右となっている。
DT_WORD_ELLIPSIS
四角形に収まらないテキストを切り捨て、省略記号を追加する。
DT_NOFULLWIDTHCHARBREAK
Microsoft® Windows® 98、Windows 2000 の場合、DBCS (double-wide character string) で改行されないようにする。これにより改行ルールは SBCS (single-wide character string) 文字の設定と同じになる。たとえば、韓国語版 Windows でアイコン ラベルを読みやすくするために使用される。DT_WORDBREAK が指定されている場合のみ有効である。
DT_HIDEPREFIX
Windows 2000 では次のようになる。テキストに含まれるアンパサンド (&) プレフィクス文字を無視する。アンパサンドに続く文字に下線は付かないが、ほかのニーモニック プレフィクス文字はそのまま処理される。

入力文字列 :"A&bc&&d"

標準 :"Abc&d"

HIDEPREFIX:"Abc&d"

「DT_NOPREFIX」および「DT_PREFIXONLY」を参照すること。

DT_PREFIXONLY
Windows 2000 では次のようになる。アンパサンド (&) プレフィクス文字に続く文字の位置で、下線のみを描画する。文字列に含まれる文字は描画しない。

入力文字列 :"A&bc&&d"

標準 :"Abc&d"

PREFIXONLY: " "

「DT_NOPREFIX」および「DT_HIDEPREFIX」を参照すること。

参照

D3DXFont.DrawTextWD3DX8.DrawText