MUILIB

让UI设计师的思想自由飞翔

   :: 首页 :: 新随笔 ::  :: 聚合  :: 管理 ::
  33 随笔 :: 0 文章 :: 39 评论 :: 0 Trackbacks
Dst = (Src * Alpha  + (256 – Src.Alpha * Alpha / 255) * Dst ) / 255;
其中:
Dst表示最终颜色,也可以认为是背景颜色
Src表示初始颜色,也可以理解为前景颜色
Src.Alpha表示源色中的Alpha值
Alpha表示对源色进行Alpha处理后再与背景色混合
颜色遵循32位AARRGGBB格式

Tmp.Red = Src.Red * SourceConstantAlpha / 255;
Tmp.Green = Src.Green * SourceConstantAlpha / 255;
Tmp.Blue = Src.Blue * SourceConstantAlpha / 255;
Tmp.Alpha = Src.Alpha * SourceConstantAlpha / 255;
Beta = 256 – Tmp.alpha;
Dst.Red = Tmp.Red + Round((Beta * Dst.Red )/255);
Dst.Green = Tmp.Green + Round((Beta * Dst.Green)/255);
Dst.Blue = Tmp.Blue + Round((Beta * Dst.Blue )/255);
Dst.Alpha = Tmp.Alpha + Round((Beta * Dst.Alpha)/255);
posted on 2013-09-27 10:53 bukebushuo 阅读(272) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理