PorterDuff.Mode
参考:http://weishu.me/2015/09/23/Xfermode-in-android/
Sa = Source alpha
Da = Dest alpha
Sc = Source color
Dc = Dst color
如果用叠加的形式看,Dst是下面的图,也就是先画的图;Source是上面的图,也就是后面要画的图。

********************************************************************
PorterDuff.Mode ADD Saturate(S + D)
PorterDuff.Mode CLEAR [0, 0]
PorterDuff.Mode DARKEN [Sa + Da - Sa*Da, Sc*(1 - Da) + Dc*(1 - Sa) + min(Sc, Dc)]

PorterDuff.Mode DST [Da, Dc]

PorterDuff.Mode DST_ATOP [Sa, Sa * Dc + Sc * (1 - Da)]
源图像和目标图像相交处绘制目标图像,不相交的地方绘制源图像,并且相交处的效果会受到源图像和目标图像alpha的影响;

PorterDuff.Mode DST_IN [Sa * Da, Sa * Dc]
在相交的地方绘制DST,但是alpha受SRC影响

PorterDuff.Mode DST_OUT [Da * (1 - Sa), Dc * (1 - Sa)]

PorterDuff.Mode DST_OVER [Sa + (1 - Sa)*Da, Rc = Dc + (1 - Da)*Sc]

PorterDuff.Mode LIGHTEN [Sa + Da - Sa*Da, Sc*(1 - Da) + Dc*(1 - Sa) + max(Sc, Dc)]
PorterDuff.Mode MULTIPLY [Sa * Da, Sc * Dc]
PorterDuff.Mode OVERLAY
PorterDuff.Mode SCREEN [Sa + Da - Sa * Da, Sc + Dc - Sc * Dc]
PorterDuff.Mode SRC [Sa, Sc]

PorterDuff.Mode SRC_ATOP [Da, Sc * Da + (1 - Sa) * Dc]
源图像和目标图像相交处绘制源图像,不相交的地方绘制目标图像,并且相交处的效果会受到源图像和目标图像alpha的影响;

PorterDuff.Mode SRC_IN [Sa * Da, Sc * Da]
就是在相交的地方绘制源图像;但是绘制的alpha通道受DST影响

PorterDuff.Mode SRC_OUT [Sa * (1 - Da), Sc * (1 - Da)]
在不相交的地方绘制源图像,在相交处根据DST的alpha进行过滤

PorterDuff.Mode SRC_OVER [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc]
从DST上面绘制SRC图像(透明度的叠加)
PorterDuff.Mode XOR [Sa + Da - 2 * Sa * Da, Sc * (1 - Da) + (1 - Sa) * Dc]
在不相交的地方按原样绘制源图像和目标图像,相交的地方受到对应alpha和色值影响

PorterDuff.Mode的更多相关文章
- Android 颜色渲染PorterDuff及Xfermode详解
在讲具体的使用之前补充一点知识,这就是 ProterDuff的由来: 相信大多数人看到这个ProterDuff单词很奇怪了吧,这肿么个意思呢,然后就用有道啊,金山啊开始翻译,但是翻译软件给出的结果肯定 ...
- PorterDuff.Mode error
Android PorterDuff.Mode error: PorterDuff cannot be resolved to a variable Answers: Add this t ...
- PorterDuff及Xfermode初识
图像合成,是将两幅退昂放在一起的动作,它使得我们能够同时看到两幅图像的特征. 我们可以首先在Canvas对象上绘制一个位图对象,然后再相同的Canvas对象上绘制第二个位图对象的方式来实现合成.不过这 ...
- Android 颜色渲染(九) PorterDuff及Xfermode详解
版权声明:本文为博主原创文章,未经博主允许不得转载. Android 颜色渲染(九) PorterDuff及Xfermode详解 之前已经讲过了除ComposeShader之外Shader的全部子类 ...
- [Android] PorterDuff使用实例----实现新浪微博图片下载效果
先上效果图,如demo_sinaweibo.gif 由效果图,下半部分是简单的效果叠加,上半部分是新浪微博加载图片显示进度的效果,显示进度的半透明区域只与根据背景图的非透明区域叠加,背景图的透明区域仍 ...
- 图形混合模式 PorterDuff Xfermodes
16种图形混合模式示例 首先绘制Dst(黄色的),然后绘制Src(蓝色的) 问题来了:为何还会有部分黄色?不应该是把src和dst都清除了吗? 图形混合模式简介 ProterDuff的含义 Prote ...
- Android PorterDuff.Mode
1.PorterDuff.Mode.CLEAR所绘制不会提交到画布上. 2.PorterDuff.Mode.SRC显示上层绘制图片 3.PorterDuff.Mode.DST显示下层绘制图片 4.Po ...
- 利用 PorterDuff 动态改变资源色值,缩减安装包大小
利用 PorterDuff 改变资源原有色值,从而实现只需要一个资源文件,就可以表示几种不同的状态,如在线或者离线等等 public Drawable colorDrawable(Resources ...
- PorterDuffXfermode之PorterDuff.Mode.MULTIPLY
package com.loaderman.customviewdemo.view; import android.content.Context; import android.graphics.B ...
随机推荐
- js判断是否是移动端(触摸屏)或者是PC
js代码: console.log("ontouchstart" in window); 手机web浏览器,chrome模拟手机.手机APP会返回true, pc端(非手机模拟状态 ...
- UITextView文字上方一段空白的解决方法
添加 self.automaticallyAdjustsScrollViewInsets = NO; 凡是继承UIScrollView的控件都会受到UIViewController的这个automat ...
- 编译安装pgbouncer-checking for OpenSSL... configure: error: not found
花了一上午时间将pgbouncer的参数通读了一遍,对他有个大致的了解:1.配置分为连接池和pgbouncer两个部分[database]\[pgbouncer ].2.一条记录对应创建一个连接池,连 ...
- Getting command line access to PHP and MySQL running MAMP on OSX
建立自己profile路径应该在/Users/yourname/,最后要运行. ./.profile使文件生效,和windows中给添加环境变量是一个道理,还可以看出linux和UNIX默认运行路径为 ...
- [Python] 跳过前几行快速读取文件内容:islice
from itertools import islice start = 1 # 跳过第一行idx=0,从idx=1开始读取文件 with codecs.open('data.json', encod ...
- 线性回归 Linear regression(1)线性回归的基本算法与求解
本系列内容大部分来自Standford公开课machine learning中Andrew老师的讲解,附加自己的一些理解,编程实现和学习笔记. 第一章 Linear regression 1.线性回归 ...
- Jmeter聚合报告
Label:请求的Name. #Samples:发出请求数量. Average:平均响应时间(单位:ms). Median:全部响应时间中位数,. 90%Line:90%用户的响应时间低于这个时间. ...
- Docker学习(二)docker镜像操作
上一篇:docker学习(一)在centos7上安装docker 列出所有docker镜像 docker images 拉取镜像 docker pull 镜像名 我这里一Tomact为例 首先在Doc ...
- IntelliJ-IDEA中mybatis三剑客
一.mybatis-generator的使用 作用:根据数据库自动生成pojo.dao和xml文件. 1.引入mybatis-generator pom.xml中引入配置:
- Quartz 2D编程指南(5) - 变换(Transforms)
Quartz 2D 绘制模型定义了两种独立的坐标空间:用户空间(用于表现文档页)和设备空间(用于表现设备的本地分辨率).用户坐标空间用浮点数表示坐标,与设备空间的像素分辨率没有关系.当我们需要一个点或 ...