【发布时间】:2017-08-28 13:05:41
【问题描述】:
我需要合并两个图像,一个在另一个之上。我有第一张图片(background.png),它有一个透明部分。我想在 background.png 的顶部放置另一个图像(image.png)。
但是对于创建的最终图像,我只希望显示与 bakground.png 的透明部分重叠的部分 image.png,新图像的其余部分将显示背景。
这是我合并图像的代码,但我不知道如何从这里开始。谢谢。
public class MainActivity extends ActionBarActivity {
private ImageView collageImage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
collageImage = (ImageView)findViewById(R.id.imageView3);
Button combineImage = (Button)findViewById(R.id.combineimage);
combineImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Bitmap bigImage = BitmapFactory.decodeResource(getResources(), R.drawable.multiple);
Bitmap smallImage = BitmapFactory.decodeResource(getResources(), R.drawable.multipletwo);
Bitmap mergedImages = createSingleImageFromMultipleImages(bigImage, smallImage);
collageImage.setImageBitmap(mergedImages);
}
});
}
private Bitmap createSingleImageFromMultipleImages(Bitmap firstImage, Bitmap secondImage){
Bitmap result = Bitmap.createBitmap(firstImage.getWidth(), firstImage.getHeight(), firstImage.getConfig());
Canvas canvas = new Canvas(result);
canvas.drawBitmap(firstImage, 0f, 0f, null);
canvas.drawBitmap(secondImage, 10, 10, null);
return result;
}
}
【问题讨论】:
标签: android android-layout android-imageview android-image