8
私はRGBカラー値とアルファ値を持っています。白いバックグラウンドがあり、アルファが適用されていると仮定して、新しいRGB値を取得するにはどうすればよいですか?色の透明度をシミュレートします
私はRGBカラー値とアルファ値を持っています。白いバックグラウンドがあり、アルファが適用されていると仮定して、新しいRGB値を取得するにはどうすればよいですか?色の透明度をシミュレートします
カラーチャネルのそれぞれに適用される式は以下の通りである:
CRは、 CFがフォアグラウンド色である、 CBピクセルの得られた色であるcr = cf * af + cb * ab * (1 - af)
背景色、af前景アルファとab背景アルファ。多くの場合、カラー値がすでにアルファによってあらかじめ乗算されて記憶
注その場合、式はまた
cr = cf + cb * (1 - af)
参照alpha composingに簡素化されます。
赤色(ff0000)がアルファ0.5で、背景が白色であるとします。結果の色を取得しようとしています:ff0000 * 0.5 + ffffff * 0.5 = ff7fff、これは私が期待するものではありません... http://www.colorhexa.com/ff7fff私は間違っていますか? –
各色(赤、緑、青)に数式を適用してください。 –
@Aaron Digulla、ありがとう、私は脇役です:) –