【概要】
Direct3D の 3D シーンに描画可能な texture を使用した漢字フォント。
全ての文字をテクスチャ化するのは非現実的なので、最大196文字分のみ、
テクスチャに置き、フォントキャッシュとして使用している。
| 重要度 | メソッド名と解説 | アクセス |
|---|---|---|
| ◎ | CD3DKanjiFont( CD3DEnv *pEnv, TCHAR* strFontName, DWORD dwHeight, DWORD dwFlags) コンストラクタ | public |
| ◎ | ~CD3DKanjiFont() デストラクタ | public |
| ○ | virtual HRESULT DrawText( FLOAT x, FLOAT y, DWORD dwColor, TCHAR* strText, DWORD dwFlags) テキストをそのままのサイズで描画する。 | public |
| ○ | virtual HRESULT DrawTextScaled( FLOAT x, FLOAT y, FLOAT fXScale, FLOAT fYScale, DWORD dwColor, TCHAR* strText )
テキストを指定された倍率でスケーリングして表示する。 | public |
| ○ | virtual HRESULT DrawTextClipped( LPRECT clipRect, FLOAT x, FLOAT y, DWORD dwColor, TCHAR* strText, DWORD dwFlags=0L ) テキストをそのままのサイズで描画する。描画可能な範囲を clipRect で指定すると。描画がクリッピングされる。 | public |
| ○ | virtual HRESULT DrawTextClippedScaled( LPRECT clipRect, FLOAT x, FLOAT y, FLOAT fXScale, FLOAT fYScale, DWORD dwColor, TCHAR* strText, DWORD dwFlags=0L ) テキストを指定された倍率でスケーリングして表示する。描画可能な範囲を clipRect で指定すると。描画がクリッピングされる。 | public |
| ○ | virtual HRESULT GetTextExtent( TCHAR* strText, SIZE* pSize ) テキストを、DrawText で描画した場合の画面上でのサイズを返す。ただしあまり正確では無い。 | public |
※重要度の意味:
| 引数: | pEnv:フォントを使用する描画環境。 |
| strFontName:フォントの名称。 | |
| dwHeight:フォントサイズ(高さをポイント数で)。 | |
| dwFlags: フォント生成時に指定するフラグ。 |
| フラグ | 解説 |
|---|---|
| D3DFONT_SIZE_IN_PIXELS | フォントのサイズをピクセルで指定。 |
| D3DFONT_BOLD | BOLDフォントを生成する。
|
pD3DEnv = new CD3DEnv();
if (SUCCEEDED(pD3DEnv->InitD3D(hWnd))){
pKanjiFont = new CD3DKanjiFont(pD3DEnv,_T("MS 明朝"),16,D3DFONT_SIZE_IN_PIXELS);
pD3DEnv->ReloadGraphics();
}
| 引数: | x:文字の描画を開始するX座標(左端)。 |
| y:文字の描画を開始するY座標(上端)。 | |
| dwColor:フォントを描画するカラーを指定。 | |
| strText:描画する文字列(C言語形式)。 |
| 引数: | x:文字の描画を開始するX座標(左端)。 |
| y:文字の描画を開始するY座標(上端)。 | |
| fXScale:横方向の倍率。1.0f でフォントサイズのまま描画。 | |
| fYScale:縦方向の倍率。1.0f でフォントサイズのまま描画。 | |
| dwColor:フォントを描画するカラーを指定。 | |
| str:描画する文字列(C言語形式)。 |
| 引数: | clipRect:描画をクリッピングする矩形へのポインタ。 |
| x:文字の描画を開始するX座標(左端)。 | |
| y:文字の描画を開始するY座標(上端)。 | |
| dwColor:フォントを描画するカラーを指定。 | |
| strText:描画する文字列(C言語形式)。 |
| 引数: | clipRect:描画をクリッピングする矩形へのポインタ。 |
| x:文字の描画を開始するX座標(左端)。 | |
| y:文字の描画を開始するY座標(上端)。 | |
| fXScale:横方向の倍率。1.0f でフォントサイズのまま描画。 | |
| fYScale:縦方向の倍率。1.0f でフォントサイズのまま描画。 | |
| dwColor:フォントを描画するカラーを指定。 | |
| str:描画する文字列(C言語形式)。 |
| 引数: | strText:描画する文字列(C言語形式)。 |
| pSize:SIZE構造体へのポインタ、文字列のサイズを返す為に使用する。 |