comment fusionner deux bitmap l’un sur l’autre

J’ai deux images et je veux enregistrer une image bitmap sur une autre exactement au même endroit où elle est présente. Je déplace également l’image en utilisant un geste.

public Bitmap combineImages(Bitmap ScaledBitmap, Bitmap bit) { int X = bit.getWidth(); int Y = bit.getHeight(); Scaled_X = ScaledBitmap.getWidth(); scaled_Y = ScaledBitmap.getHeight(); System.out.println("Combined Images"); System.out.println("Bit :" + X + "/t" + Y); System.out.println("SCaled_Bitmap :" + Scaled_X + "\t" + scaled_Y); overlaybitmap = Bitmap.createBitmap(ScaledBitmap.getWidth(), ScaledBitmap.getHeight(), ScaledBitmap.getConfig()); Canvas canvas = new Canvas(overlaybitmap); canvas.drawBitmap(ScaledBitmap, new Masortingx(), null); canvas.drawBitmap(bit, new Masortingx(), null); return overlaybitmap; } 

Toute aide serait grandement appréciée.

vous pouvez combiner deux bitmaps comme ceci

 public static 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 Masortingx(), null); canvas.drawBitmap(bmp2, 0, 0, null); return bmOverlay; } 

vous pouvez combiner deux bitmaps, c’est-à-dire un bitmap sur un autre bitmap en superposition
essayez ce code ci-dessous:

  public Bitmap bitmapOverlayToCenter(Bitmap bitmap1, Bitmap overlayBitmap) { int bitmap1Width = bitmap1.getWidth(); int bitmap1Height = bitmap1.getHeight(); int bitmap2Width = overlayBitmap.getWidth(); int bitmap2Height = overlayBitmap.getHeight(); float marginLeft = (float) (bitmap1Width * 0.5 - bitmap2Width * 0.5); float marginTop = (float) (bitmap1Height * 0.5 - bitmap2Height * 0.5); Bitmap finalBitmap = Bitmap.createBitmap(bitmap1Width, bitmap1Height, bitmap1.getConfig()); Canvas canvas = new Canvas(finalBitmap); canvas.drawBitmap(bitmap1, new Masortingx(), null); canvas.drawBitmap(overlayBitmap, marginLeft, marginTop, null); return finalBitmap; }