Matrix matrix = new Matrix();
// 这是让图片有旋转的效果 第一个参数是图片旋转的度数 第二个和第三个是参数是围绕哪个点进行旋转
matrix.setRotate(30, bitmap.getWidth() / 2, bitmap.getHeight() / 2);
// 这会让图片进行平移 第一个参数是x轴平移的像素 第二个是Y轴平移的像素
matrix.postTranslate(20, 0);
// 图片会进行缩放 x轴是原来的两倍 y轴不变 看你定义的参数
matrix.setScale(2, 1);
// 这个两个方法结合在一起会实现一个镜子的效果
matrix.setScale(-1, 1);
matrix.postTranslate(bitmap.getWidth(), 0);
// 还是这个两个方法 但是改变值 就变成一个倒影的效果
matrix.setScale(1, -1);
matrix.postTranslate(0, bitmap.getWidth());
ColorMatrix cm = new ColorMatrix();
cm.set(new float[] {
r, 0, 0, 0, 0,
0, 1, 0, 0, 0,
0, 0, 1, 0, 0,
0, 0, 0, 1, 0
});
paint.setColorFilter(new ColorMatrixColorFilter(cm));
colorMatrix是对图片的颜色进行处理的类,对图片搞特效会用到这个类
第一行的第一个参数代表红色,第二行第二个参数代表绿色 ,第三个行的第三个参数代表蓝色 也就是所谓的RGB 每行的最后一个参数代表的是他的饱和度
//画一张图片只是另外的的图片上面
paint.setXfermode(new PorterDuffXfermode(android.graphics.PorterDuff.Mode.MULTIPLY));
//画一张图片 然后该图片与原先那张图片颜色吻合
paint.setXfermode(new PorterDuffXfermode(android.graphics.PorterDuff.Mode.DARKEN));