PorterDuff.Mode在android图形中是什么意思?


142

我想知道PorterDuff.Mode在android图形中的含义。

我知道这是一种传输模式

我也知道,它具有DST_IN,Multiply等属性。


从我最近的发现中 如果您有重叠的图像并尝试更改其中一个图像的滤色器,则会影响与之重叠的另一个图像!
2014年

Answers:


321

这是一篇出色的文章,其中包含Google工程师的插图:

http://ssp.impulsetrain.com/porterduff.html

PorterDuff被描述为一种组合图像的方式,就好像它们是彼此重叠的“不规则形状的硬纸板”一样,也是一种融合重叠部分的方案。

构成的图像的默认的Android方式是PorterDuff.Mode.SRC_OVER,这相当于绘制源图像/色彩的目标图像。换句话说,它可以完成您所期望的操作,并在目标图像(画布)的顶部绘制源图像(正在绘制的图像),并且目标图像一直显示到源图像的alpha定义的程度。

文章中的PorterDuff信息图

您可以使用下面的键来了解Android文档用来描述其他模式的代数(有关类似术语的更完整描述,请参阅本文)。

  • 源阿尔法
  • Sc来源颜色
  • 目的地阿尔法
  • DC目标颜色

其中alpha是一个值[0..1],并且每个通道替换一次颜色(因此,对红色,绿色和蓝色分别使用一次公式)

结果值在方括号中指定为一对,如下所示。

[<alpha-value>,<color-value>]

其中alpha-valuecolor-value是分别生成结果alpha香奈儿和每个颜色香奈儿的公式。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.