Android Bitmap / Drawable蒙版

时间:2014-04-08 21:09:35

标签: android bitmap imageview mask

我需要在ImageView中构建一些位图。我用下面的代码:

        Bitmap original - texture;                        
        Bitmap mask - image that I must textured;            
        Bitmap result -  result image;

        Canvas mCanvas = new Canvas(result);
        Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);            
        paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN));
        mCanvas.drawBitmap(original, 0, 0, null);
        mCanvas.drawBitmap(mask, 0, 0, paint);
        paint.setXfermode(null);            
        imgView.setImageBitmap(result);
        imgView.setScaleType(ScaleType.CENTER);

它的工作但我有

掩模 enter image description here  和 纹理enter image description here 结果图像 enter image description here

但我需要黑色边框和图像电路。有谁知道解决方法怎么做?

1 个答案:

答案 0 :(得分:1)

解决方案我的问题非常简单。相反

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN));

需要使用

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.MULTIPLY));

一切都像魅力一样。