我有两个位图,我在onCreate()中创建它们。
Bitmap bmp1 = BitmapFactory.decodeResource(getResources(),id);
Bitmap bmp2 = BitmapFactory.decodeResource(getResources(),id);
bmp1和bmp2相同。我在我的应用程序中修改了bmp2。我的工作完成后,单击“清除”按钮。当我点击“清除”按钮时,我正在尝试将bmp1(清洁图像)复制到bmp2(已更改的图像)。但我不想使用createBitmap()或copy()函数。因为这些是创建新的Bitmap对象。我只想使用我的两个位图(bmp1和bmp2)。如何将bmp1复制到bmp2?我搜索谷歌,但无论如何使用createBitmap()或copy()。
感谢。
答案 0 :(得分:13)
我解决了我的问题
首先我为bmp2创建了bmp1,bmp2和canvas:
bmp1 = BitmapFactory.decodeResource(cont.getResources(), R.drawable.image);
bmp2 = bmp1.copy(bmp1.getConfig(), true);
canvasBmp2 = new Canvas( bmp2 );
当我想将bmp1复制到bmp2时:
canvasBmp2.drawBitmap(bmp1, 0, 0, null);
@Override
protected void onDraw(Canvas canvas)
{
canvas.drawBitmap(bmp2, 0, 0, null);
}