Обрезать изображение по области полигона

Я хочу обрезать изображение по области полигона, но не могу найти какую-либо библиотеку, которая может это сделать. OpenCV слишком велик для этой мелочи. JJIL [ введите описание ссылки здесь ] обрезайте только прямоугольную область. Может быть, у вас есть идеи, как я могу это достичь? Спасибо за помощь!

Введите описание изображения здесьВведите описание изображения здесь

Для Nidhi: попробуйте что-то вроде этого, если не работает – создайте еще один холст для пути, а не получите Bitmap от него (для маски) и примените это растровое изображение маски к вашему первоначальному холсту вместо drawPath.

Bitmap obmp = BitmapFactory.decodeResource(getResources(), R.drawable.image1); Bitmap resultImg = Bitmap.createBitmap(obmp.getWidth(), obmp.getHeight(), Bitmap.Config.ARGB_8888); Bitmap maskImg = Bitmap.createBitmap(obmp.getWidth(), obmp.getHeight(), Bitmap.Config.ARGB_8888); Canvas mCanvas = new Canvas(resultImg); Canvas maskCanvas = new Canvas(maskImg); Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); paint.setAntiAlias(true); paint.setStyle(Paint.Style.FILL);; paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN)); Path path = new Path(); path.moveTo(view.mx,view.my); path.lineTo(view.x1,view.y1); path.lineTo(view.x2,view.y2 ); path.lineTo(view.x3,view.y3); path.lineTo(view.x4,view.y4); path.close(); maskCanvas.drawPath(path, paint); mCanvas.drawBitmap(obmp, 0, 0, null); mCanvas.drawBitmap(maskImg, 0, 0, paint); 

Спасибо за Eddy_Em, я достиг этого, используя PorterDuffXfermode. Хороший пример