以下のように文字を出力すると、文字の背景が白くなってしまいます。

文字の背景色を塗りつぶさない方法がありましたら教えてください。
(開発環境VC++6、Windows2000)


CFont* pFont;
CFont font;
font.CreateFont(10,0,0,0,FW_DONTCARE,FALSE,FALSE,FALSE,
SHIFTJIS_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,
DRAFT_QUALITY,DEFAULT_PITCH,_T("MS Pゴシック"));
pFont = OutputDC->SelectObject(&font); // フォントを設定。
OutputDC->TextOut(iXpt,iYpt+(iCnt*10),csOutputTxt[iCnt]);

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2007/01/06 10:23:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:ardarim No.1

回答回数897ベストアンサー獲得回数145

TextOutの前に、

OutputDC->SelectStockObject(NULL_BRUSH);

で背景色を無色にしておけば大丈夫だと思います。

CDC::SelectStockObject (MFC)

id:harunoharuno

回答ありがとうございます。ですが、

教えていただいた方法を試してみても

やはりフォントの後ろに白い背景ができてしまいました。あとでいろいろ試したところ

OutputDC->SetBkMode(TRANSPARENT );

でうまくいきました。

2007/01/06 10:22:25

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません