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