
OpenGLによる文字の描画を行っています。
以下のソースで文字の表示・フォントの変更はできたのですが、
文字の色の変更ができません。
どなたかお分かりになる方御願い致します。
------------------------------
draw_text(L"あいうえお");
void draw_text(const wchar_t *s)
{
SelectObject(hcdc, hbm);
HFONT hFont;
HGDIOBJ hFontOld;
hFont = CreateFont(
50,// フォント高さ
0,// 文字幅
0,// テキストの角度
0,// ベースラインとx軸との角度
FW_BOLD,// フォントの重さ(太さ)
FALSE,// イタリック体
FALSE,// アンダーライン
FALSE,// 打ち消し線
SHIFTJIS_CHARSET,// 文字セット
OUT_DEFAULT_PRECIS,// 出力精度
CLIP_DEFAULT_PRECIS,// クリッピング精度
PROOF_QUALITY,// 出力品質
FIXED_PITCH | FF_MODERN,// ピッチとファミリー
(LPCTSTR)"MS ゴシック");// 書体名
SetTextColor(hcdc, RGB(255,0,0));
hFontOld = SelectObject(hcdc, hFont);
while(*s != L'\0'){
int w;
GCP_RESULTSW gr = {sizeof(GCP_RESULTSW)};
gr.nGlyphs = 1;
gr.nMaxFit = 1;
w = GetCharacterPlacementW(
hcdc,// デバイスコンテキストのハンドル
s,// 文字列へのポインタ
1,// 文字列内の文字数
1000,// 表示された文字列に対する最大範囲
&gr,// 配置結果に対するバッファへのポインタ
0);// 配置フラグ
w &= 0xffff;
{
ExtTextOutW(
hcdc,// デバイスコンテキストのハンドル
0,// 開始位置(基準点)の x 座標
0,// 開始位置(基準点)の y 座標
ETO_OPAQUE,// 長方形領域の使い方のオプション
NULL,// 長方形領域の入った構造体へのポインタ
s,// 文字列
1,// 文字数
NULL);// 文字間隔の入った配列
glBitmap(
96,// ビットマップの幅
96,// ビットマップの高さ(ピクセル単位)
-128,// ビットマップイメージの原点の位置(x軸)
140,// ビットマップイメージの原点の位置(y軸)
w,// オフセット値(x軸)
0,// オフセット値(y軸)
(const GLubyte *)chbuf); // 画像データ
}
s++;
}
SelectObject(hcdc,hFontOld);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語のintとcharの違いってな...
-
CStringからchar*への型変換に...
-
char*を初期化したいのですが
-
char型にint型の数値を代入する。
-
new charとnew char[N]の違いは?
-
C言語で文字列をかえす正しい書...
-
const char* s1とただのchar s1...
-
文字列置換のアルゴリズムを教...
-
fgetc( )の戻り値はなぜ整数??
-
C++17で、unsigned char * 配列...
-
文字列のswap
-
文字列内の数字削除
-
Cの関数の引数のconst *charに...
-
【C言語】引数にファイルパスを...
-
エクセルのMID関数は、C言語では?
-
char 文字列型 の表現範囲が-12...
-
C言語でポインターで詰まってい...
-
fread()関数とfwrite()関数につ...
-
isalpha()関数について
-
strcatの逆をしたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CStringからchar*への型変換に...
-
C言語のintとcharの違いってな...
-
char*を初期化したいのですが
-
char型にint型の数値を代入する。
-
C言語にて構造体のメンバがNULL...
-
C++17で、unsigned char * 配列...
-
new charとnew char[N]の違いは?
-
入力された文字列の中の数字を...
-
char 文字列型 の表現範囲が-12...
-
文字列str内の全ての数字を...
-
C言語のプログラムについてです
-
ポインタ配列
-
fstream型オブジェクトを関数の...
-
strcat関数を自作したいです
-
動的メモリの初期化方法について。
-
ポインタで詰まりました;
-
c言語でポインタ変数を用いた配...
-
C++Builder 2009 テキスト...
-
C言語 strstrの実装
-
fgetc( )の戻り値はなぜ整数??
おすすめ情報