我正在开发一个使用画布的项目,用户可以触摸将一个位图覆盖移动到另一个位图。当用户按下保存按钮时,两个位图应合并并成为单个位图。我已经完成了所有操作,现在仍然在 XY 位置合并两个位图。在我的研究过程中,我发现了以下代码。
private Bitmap overlay(Bitmap bmp1, Bitmap bmp2) {
Bitmap bmOverlay = Bitmap.createBitmap(bmp1.getWidth(), bmp1.getHeight(), bmp1.getConfig());
Canvas canvas = new Canvas(bmOverlay);
canvas.drawBitmap(bmp1, new Matrix(), null);
canvas.drawBitmap(bmp2, new Matrix(), null);
return bmOverlay;
}
但此代码在 (0,0) 位置覆盖位图。我想在给定的位置覆盖位图。请提出一些解决方案。提前致谢。
使用下面的代码
private Bitmap overlay(Bitmap bmp1, Bitmap bmp2) {
Bitmap bmOverlay = Bitmap.createBitmap(bmp1.getWidth(), bmp1.getHeight(), bmp1.getConfig());
Canvas canvas = new Canvas(bmOverlay);
canvas.drawBitmap(bmp1, new Matrix(), null);
canvas.drawBitmap(bmp2, x,y, null);
return bmOverlay;
}
其中 x 和 y 是您必须绘制覆盖位图的实际位置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)