将两种颜色组合在一起

时间:2014-06-12 13:13:34

标签: java graphics alphablending

我想结合两种颜色的值。例如:

// color 1:
int aa = 255;
int rr = 255;
int gg = 0;
int bb = 0;

// color 2:
int aa = 128; 
int rr = 0; 
int gg = 0; 
int bb = 0;

第一种颜色是100%alpha的纯红色。第二种颜色是黑色,50%alpha。我想找到最终的组合颜色,就好像我将第二种颜色分层放在第一种颜色上,就像你可以通过图层在photoshop中那样。

这样做的公式是什么?我不确定这里是否有正确的术语,因此获取我认为不是我想要的搜索结果。

由于

1 个答案:

答案 0 :(得分:0)

您是否尝试添加这两种颜色以查看结果是否符合预期?

Class Color
{
int aa ;
int rr ;
int gg ;
int bb;
}

 Color Combined( Color a, Color b)
 {
    Color result=new Color();
    result.aa=(int)((a.aa+b.aa)/2);
    result.rr=(int)( (a.rr+b.rr)/2);
    result.gg=(int)( (a.gg+b.gg)/2);
    result.bb=(int)( (a.bb+b.bb)/2);
    return result;
 }