作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要从 Bitmap2 中剪切 Bitmap1..例如,我有 Bitmap1(从 Resources drawable 解码)和 Bitmap2(也从 Resources drawable 解码)。
位图 1:
| |
> <
| |
位图2:
|xxx|
|xxx|
|xxx|
我需要结果:
|xxx|
>x<
|xxx|
谁能给我示例代码?
安卓系统。
最佳答案
您可以加载两个位图并使用 PorterDuffXfermode
和 DST_IN
来屏蔽“Bitmap2”,有点像这样:
Bitmap bitmap2 = BitmapFactory.decodeResource(getResources(), R.drawable.bitmap2);
Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(), R.drawable.bitmap1);
Bitmap bitmap2MaskedByBitmap1 = Bitmap.createBitmap(bitmap2.getWidth(), bitmap2.getHeight(), bitmap2.getConfig());
Canvas canvas = new Canvas(bitmap2MaskedByBitmap1);
Paint paint = new Paint();
paint.setFilterBitmap(false);
canvas.drawBitmap(bitmap2, 0, 0, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN));
canvas.drawBitmap(bitmap1, 0, 0, paint);
bitmap2.recycle();
bitmap1.recycle();
// bitmap2MaskedByBitmap1 should now contain the desired image
// as long as your Bitmap1 mask isn't sh-t.
关于android - 如何从另一个位图中剪切一个位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9669685/
我是一名优秀的程序员,十分优秀!