Quiero crear una imagen combinada con dos imágenes diferentes superponiendo.¿Cómo usar Canvas para fusionar dos imágenes en Android?
Por esta Mi código es
ImageView image = (ImageView) findViewById(R.id.imageView1);
Drawable drawableFore = getResources().getDrawable(R.drawable.foreg);
Drawable drawableBack = getResources().getDrawable(R.drawable.backg);
Bitmap bitmapFore = ((BitmapDrawable) drawableFore).getBitmap();
Bitmap bitmapBack = ((BitmapDrawable) drawableBack).getBitmap();
Bitmap scaledBitmapFore = Bitmap.createScaledBitmap(bitmapFore, 35, 35, true);
Bitmap scaledBitmapBack = Bitmap.createScaledBitmap(bitmapBack, 45, 45, true);
Bitmap combineImages = overlay(scaledBitmapBack, scaledBitmapFore);
image.setImageBitmap(combineImages);
superposición() método es
public static Bitmap overlay(Bitmap bmp1, Bitmap bmp2)
{
try
{
Bitmap bmOverlay = Bitmap.createBitmap(bmp1.getWidth(), bmp1.getHeight(), bmp1.getConfig());
Canvas canvas = new Canvas(bmOverlay);
canvas.drawBitmap(bmp1, new Matrix(), null);
canvas.drawBitmap(bmp2, 0, 0, null);
return bmOverlay;
} catch (Exception e)
{
// TODO: handle exception
e.printStackTrace();
return null;
}
}
caso 1: Método de superposición devuelve un valor nulo en este caso.
caso 2: Pero cuando cambio imágenes como uso la imagen de fondo para configurar en primer plano y en primer plano la imagen para establecer en segundo plano, el código funciona bien.
pero quiero que el primer caso funcione correctamente pero no lo es. No entiendo por qué sucede esto.
Por favor ayuda
No sé por qué n cómo, ahora está funcionando. – AB1209