将图像/绘图裁剪为三角形

时间:2014-04-06 10:23:26

标签: android android-shape

我正在尝试在我的Android应用中将图像裁剪为三角形,这样我才能获得图像的三角形部分。如何才能做到这一点?我已成功完成了Square和Circle形状的裁剪,但我无法对三角形做同样的事情。有人可以帮我这个。

感谢。

大卫

1 个答案:

答案 0 :(得分:0)

你可以使用" Mask"图像..此图像应该是您的情况下的三角形(或您需要的任何其他形状),如下所示:

 ImageView mImageView= (ImageView)findViewById(R.id.imageview_id);
 Bitmap original = BitmapFactory.decodeResource(getResources(),R.drawable.contentimage);
 Bitmap mask = BitmapFactory.decodeResource(getResources(),R.drawable.mask);
 Bitmap result = Bitmap.createBitmap(mask.getWidth(), mask.getHeight(),  Config.ARGB_8888);
 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);
 mImageView.setImageBitmap(result);
 mImageView.setScaleType(ScaleType.CENTER);
 mImageView.setBackgroundResource(R.drawable.background_frame);