Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I want to add a free hand crop functionality.

Till now I can open the picture and draw a path around the part of the image that I want to crop thanks to this code:

https://stackoverflow.com/a/18459072/2361533

But before opening the cropped image in another activity, I want to darken the outside part of the crop path, to show the user how the cropped image will be. In case he does not like the result, he could reset the image.

It would be something like the image here: Android: Free Croping of Image

How can i do this ?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
232 views
Welcome To Ask or Share your Answers For Others

1 Answer

Use the following two methods as a start:

setXfermode(new PorterDuffXfermode(Mode.DARKEN)); 
canvas.clipPath(path, Region.Op.DIFFERENCE);

The first one is applied to a Paint object and darkens a certain region. The second "clips" the path in your canvas and takes the inverse (using Region.Op.DIFFERENCE).


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...