私は透明なフォームを持っています。透明度の高いものを描画しようとすると、単に機能しませんアルファ変数が0に近づくにつれて、描画される色は元の色に近づくようになります(背景色と透明度キーを一致させるだけで簡単に行えます)透明なフォームCで不透明度を描画する
フォームの背景色。
SolidBrush opaqueBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));
SolidBrush semiTransBrush = new SolidBrush(Color.FromArgb(128, 0, 0, 255));
SolidBrush superTransBrush = new SolidBrush(Color.FromArgb(10, 0, 0, 255));
所望の効果につながる通常のフォーム上に描画するには、これらの3つのブラシを使用して。しかし、私の透明フォーム上でそれを使用して、単に私のtransparencyKey /背景色とsuperTransBrushにマッチし、semiTransBrush希望の色と背景の間のどこかにあります。これはとにかくこの周りですか?
BG /透過色を緑色に設定し、ブラシが青色に設定されている場合は、アルファ値128で青と緑が混在していますか? – Phylyp
対象とするもの:Winforms、WPF、ASP ..? __Always__あなたの質問に正しくタグを付けてください! - _アルファ変数が0に近づくにつれ、描画される色は単にフォームの元の背景色に近づきます._実際、それはどのようなものですか。どのように他のだろうか? __one正確な透明キーkey color__だけが透明になります。他のピクセルはそうではありません。それのまわりには道がない。あなたはキーカラーとして(254,254,254,254)のような色を選んでみることができますが、まだ白が混じっています。 - また、なぜGDI +の代わりに 'GDI'をタグ付けしましたか? – TaW
WPFをターゲットにしているようですか?私はかつて透明性に問題がありました。私が欠けていたパズルのビットはこれでした:上のものの見た目の色は、その下にあるものの合計です。あなたが見る最終的な色は、次の色を上書きする1つのレイヤーよりも、色のついたガラスの部分を重ねるようなものです。 –