Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to draw on bitmap using another bitmap as mask?

I want to draw on a bitmap using another bitmap as mask. The mask is a black bitmap with a transparent object in it. I want this transparent part to be filled with an arbitrary color and added to my original image. How can this be done?

enter image description here

+

enter image description here

+ blue color =

enter image description here

like image 289
l33t Avatar asked Jul 24 '13 13:07

l33t


1 Answers

I had to change the masks as described by @Christian. Then, the wanted result could easily be produced:

canvas.drawRect(rect, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN));
canvas.drawBitmap(mask, 0.0f, 0.0f, paint);
like image 69
l33t Avatar answered Oct 23 '22 20:10

l33t