/**
* 合成两个图,src为显示范围,dst为显示内容
* @param srcBitmap
* @param dstBitmap
* @return
*/
public static Bitmap compositeImages(Bitmap srcBitmap , Bitmap dstBitmap){
Bitmap bmp = null;
//下面这个Bitmap中创建的函数就可以创建一个空的Bitmap
bmp = Bitmap.createBitmap(srcBitmap.getWidth(), srcBitmap.getHeight(), srcBitmap.getConfig());
Paint paint = new Paint();
Canvas canvas = new Canvas(bmp);
//首先绘制第一张图片,很简单,就是和方法中getDstImage一样
canvas.drawBitmap(srcBitmap, 0, 0, paint);
//在绘制第二张图片的时候,我们需要指定一个Xfermode
//这里采用Multiply模式,这个模式是将两张图片的对应的点的像素相乘
//,再除以255,然后以新的像素来重新绘制显示合成后的图像
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.MULTIPLY));
canvas.drawBitmap(dstBitmap,new Rect(0,0,dstBitmap.getWidth(),dstBitmap.getHeight()),
new Rect(0,0,srcBitmap.getWidth(),srcBitmap.getHeight()),paint);
return bmp;
}