STed2いじり(15) Direct2D化

公開:2010-11-07 11:21
更新:2020-02-15 04:36
カテゴリ:windows,direct2d,sted2,c++,audio

ビットマップが透過されるか念のため確認。結果は御覧の通り。

グラデーションブラシで書いた文字の上に、ビットマップに「ビットマップ」という文字を書いてDrawBitmap()した。


std::wstring td2d(L"DWR こんにちは");
// グラデーションブラシでHwndRenderTargetに描画
render_target_->DrawTextW(
td2d.c_str(),
td2d.size(),
format,
l,
gbrush);
{
sf::begin_draw<ID2D1BitmapRenderTargetPtr> begin(bitmap_target_);
// ビットマップに文字を描画
std::wstring tb(L"ビットマップ");
bitmap_target_->Clear();
bitmap_target_->DrawTextW(
tb.c_str(),
tb.size(),
format,
l1,
brush);
}
// BitmapRenderTargetからビットマップを取得
ID2D1BitmapPtr b;
bitmap_target_->GetBitmap(&b);
// ビットマップをHwndRenderTargetに描画
render_target_->DrawBitmap(b);

ちゃんと透過している。 当たり前か。。

これでマスクビットマップはいらないということがわかった。かなり処理が端折れるな。。