张志峰的博客

水滴石川,积少成多。

导航

Delphi 2种颜色叠加

Posted on 2011-07-22 14:20  ╰★张志峰★╮  阅读(417)  评论(0)    收藏  举报

Function   NewColor(color1,color2:Tcolor):TColor;
type
TRGB=packed   record
    R:Byte   ;
    G:Byte   ;
    B:Byte   ;
    A:Byte   ;
end   ;
var
    p1:^TRGB   ;
    p2:^TRGB   ;
    P3:^TRGB   ;
begin
    Result   :=   color1   ;
    P1   :=@color1   ;
    P2   :=@color2   ;
    P3   :=   @Result   ;
    p3.R   :=   (P1^.R+P2^.R)   div   2   ;
    p3.G   :=   (P1^.G+P2^.G)   div   2   ;
    p3.B   :=   (P1^.B+P2^.B)   div   2   ;
end;