高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

アルファブレンド

 .NETで色値を扱う構造体"Color"は、標準でアルファ値をサポートしています。Delphiの場合、ビットマップの背景を透過させたいときには、

  bitmap.Transparent = true

なんてやってましたが、.NETでこれを実現するには、ビットマップを生成してすぐに、

  Graphics gr= Graphics.FromImage(bmp);
  gr.FillRectangle(Brushes.Transparent, 0, 0, size.Width, size.Height);

などというようにやるわけです。Brushes.Transparentは、アルファ値が0のブラシですので、背景が"透明色で塗りつぶされる"わけです。
 これってちょっと慣れるまで時間がかかりそうですが、おもしろいかもしれませんね、お気に入りの色みたいな色を扱うアプリケーションでは、アルファ値も使えるかも。