Xfermode
xfermode:用于计算机中图形编程的图形混合效果(ARGB即透明和色值的混合叠加)
android中我们经常使用Paint类实现自定义的图片和文本来实现一些效果,例如:
1. 加载动画
该功能使用Mode.SRC_IN:它的意思时两层位图重叠,在显示的时候,显示的是他们相交的部分,就是重叠在一起的部分,如果没有重叠的就不显示了,(这个不显示我觉得是色值混合的时候变成了透明,这部分暂时还不清楚,后期看看SkXfermode.h后在写这部分,现在先知其然就行了,丢脸啊………….)
2. 还有画板功能中的橡皮擦功能:使用Mode.CLEAR,这个功能是以前用一个别人写的画笔时候发现别人是这么写的.
3. 还有圆形图片和带弧度的矩形图片,以及一些其他形状的图片,当然了这写功能除了使用Paint.setXfermode()实现外,还可以以其他多种方式实现,例如使用paint.setShader(BitmapShader)这个函数和BitmapShader相配合可以实现,等…
自定义色值的RatingBar…………其他效果就不举例了,
下面先介绍一下该类的具体实现,完了之后在介绍上面这些效果的实现.
PorterDuffXfermode
Xfermode的实现类
PorterDuff.Mode
图形混合