在androidstudio中如何将bitmap1放置在bitmap2中心位置合成新的bitmap3
时间: 2024-05-15 16:13:04 浏览: 141
可以按照以下步骤将bitmap1放置在bitmap2中心位置合成新的bitmap3:
1. 创建一个新的Bitmap对象bitmap3,大小应该与bitmap2相同。
2. 创建一个Canvas对象canvas,并将其绑定到bitmap3上。
3. 在canvas上绘制bitmap2。
4. 计算bitmap1应该放置的位置。可以使用以下代码计算:
int left = (bitmap2.getWidth() - bitmap1.getWidth()) / 2;
int top = (bitmap2.getHeight() - bitmap1.getHeight()) / 2;
5. 在canvas上绘制bitmap1,位置为计算出的left和top。
6. 将canvas解绑定,完成合成操作。
下面是示例代码:
```
public Bitmap combineBitmap(Bitmap bitmap1, Bitmap bitmap2) {
Bitmap bitmap3 = Bitmap.createBitmap(bitmap2.getWidth(), bitmap2.getHeight(), bitmap2.getConfig());
Canvas canvas = new Canvas(bitmap3);
canvas.drawBitmap(bitmap2, 0, 0, null);
int left = (bitmap2.getWidth() - bitmap1.getWidth()) / 2;
int top = (bitmap2.getHeight() - bitmap1.getHeight()) / 2;
canvas.drawBitmap(bitmap1, left, top, null);
canvas.setBitmap(null);
return bitmap3;
}
```
阅读全文