BitBlt(活用編)

基本編がまだなのにもう活用編です。(^^

で、何を活用するのかというと・・・・
サンプルをダウンロードして自分の目で確かめてください。
説明は後で必ずしますから。
一応、「ふにゃふにゃ」でも使っている技術です。

VB用サンプル(5.10kilobyte)

03/06/28 追加分

予告どおり、説明していきます。
ソースだそうっす 所謂マスクですまず使いたい絵とマスクを用意します。
今回は制作中のゲームの画像を使っています。
マスクの色は必ずこれと同じ色にしてください。
背景画像、つまりBGI これを目指せ!今回はソース画像からマスクの黒い部分に対応する部分を取り出して背景に描き込みます。
つまり、右側の絵のような出力結果を得ることとなります。
万事解決画像 ちょっと都合が悪い画像とりあえず、左側のような画像ができれば、マスクをSRCAND、ソースをSRCPAINTで転送すればめでたく目的のことができて、万事解決です。
ところが、そんな画像は作れません(少なくとも1回の動作では)。
そこで、仕方なく右側の画像を使うことにします。
こちらについては、マスクをSRCPAINTで重ねるだけで簡単にできます。
これを適当なHDCの上に作ります。
こんな画像がほしければ こんなマスクがいるんですさて、こうやってできた画像を背景の上に乗せるためには、背景画像を、白く抜かなければなりません。
となれば、透過しない部分が白のマスクが必要となりますが、残念ながら今あるのはその正反対の色のマスクです。
ならまた適当なHDCの上に作ってしまおうといきたいところなのですが、今回はその必要はありません。
MERGEPAINTでマスクを背景に重ねるだけで白く抜くことができます。
これを重ねて・・・ こうするのか・・・あとは、できた二つの画像をSRCANDで重ねれば出来上がりです。