android 画图之setXfermode
来源:互联网 发布:关闭linux防火墙命令 编辑:程序博客网 时间:2024/05/21 22:26
http://blog.csdn.net/c8822882/article/details/6906768
setXfermode
设置两张图片相交时的模式
我们知道 在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状。 如果新的Paint是完全不透明的,那么它将完全遮挡住下面的Paint;
而setXfermode就可以来解决这个问题
一般来说 用法是这样的
- Canvas canvas = new Canvas(bitmap1);
- paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
- canvas.drawBitmap(mask, 0f, 0f, paint);
就是在图片bitmap1上面绘制图片mask时 处理两者相交时候显示的问题
canvas原有的图片 可以理解为背景 就是dst
新画上去的图片 可以理解为前景 就是src
Mode的值 如下图
http://blog.sina.com.cn/s/blog_780f810701011gce.html
1.
可以通过修改Paint的Xfermode来影响在Canvas已有的图像上面绘制新的颜色的方式
在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状。如果新的Paint是完全不透明的,那么它将完全遮挡住下面的Paint;如果它是部分透明的,那么它将会被染上下面的颜色。
下面的Xfermode子类可以改变这种行为:
AvoidXfermode
PixelXorXfermode
PorterDuffXfermode
相关Demo可以在开发文档中的 API Demos
16条Porter-Duff规则
1.PorterDuff.Mode.CLEAR
2.PorterDuff.Mode.SRC
3.PorterDuff.Mode.DST
4.PorterDuff.Mode.SRC_OVER
5.PorterDuff.Mode.DST_OVER
6.PorterDuff.Mode.SRC_IN
7.PorterDuff.Mode.DST_IN
8.PorterDuff.Mode.SRC_OUT
9.PorterDuff.Mode.DST_OUT
10.PorterDuff.Mode.SRC_ATOP
11.PorterDuff.Mode.DST_ATOP
12.PorterDuff.Mode.XOR
13.PorterDuff.Mode.DARKEN
14.PorterDuff.Mode.LIGHTEN
15.PorterDuff.Mode.MULTIPLY
16.PorterDuff.Mode.SCREEN
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- Android之setXfermode 画图
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图之setXfermode
- android 画图paint之setXfermode
- android 画图之setXfermode、Xfermode使用
- ndroid 画图之setXfermode
- android 画图之setXfermode 处理两图相交叉的情况
- 关于jsp项目中文件的存放位置
- 判断Android系统net和wap接入点的开发实例
- 为Android内核添加新驱动
- Best game to practice regular expression with fun
- MQTT的学习研究 【汇总贴】
- android 画图之setXfermode
- 常用命令
- 适配器(Adapter)模式
- 高人对libsvm的经典总结(全面至极)
- 【转】DBGrid分页显示
- SqlParamter用法
- 防止SQL注入攻击
- Unable to start Workflow Notification Mailer
- win消息传递参数尽量不要传指针