Study::Bitmap で透過色を指定するためには Study::Bitmap::load() メソッドの第3引数に色情報を渡します。
メルマガで勉強目的にご利用いただいている Study::Bitmap ですが、初期化のタイミングで互換デバイスコンテキストや読み込むファイルが決定している必要があり、使い勝手に難がありました。そこで、ビットマップを初期化の後に読み込めるように改造してみました。
ビットマップを扱うためにメルマガで配布いたしました Study::Bitmap の使い方を説明します。
画像ファイルの内容をウィンドウに描画するためには、次のステップを踏みます。
ゲーム画面の描画に必要なデバイスコンテキストハンドルを取得する方法というのは、たいていの場合、次のどれかになると思います。迷ったら参考にしてください。たぶん、一度参考にしたら二度と必要なくなると思います。
CreateCompatibleDC() で作ったデバイスコンテキストは、ペンやブラシなどの基本的な GDI オブジェクト以外は何も SelectObject() していないのかと思ったら、何かビットマップも持っているようです。
GDI を使ってデスクトップに図形を描画するためには GetDC() 関数を使ってデスクトップのデバイスコンテキストハンドルを取得します。
デバイスコンテキストの後始末には ReleaseDC() と DeleteDC() の使い分けが必要です。
GDI でウィンドウに円や多角形、文字列、ビットマップを描画するにはウィンドウハンドルからデバイスコンテキストハンドルを取得する必要があります。