title: Android merge two images
body: <p>I have these two images, which I basically merge on canvas. Now i want to save that canvas into an image. How should i do it or if there is any other way to merge two images.</p>
  
  <p>My sample code is  - </p>
  
  <pre><code>            Bitmap bmp1 = BitmapFactory.decodeResource(getResources(),
                  R.drawable.duckpic);
          Bitmap bmp2 = BitmapFactory.decodeResource(getResources(),
                  R.drawable.img);
          // canvas.drawColor(Color.BLACK);
          // canvas.drawBitmap(_scratch, 10, 10, null);
          Bitmap bmOverlay = Bitmap.createBitmap(bmp2.getWidth(), bmp2
                  .getHeight(), bmp2.getConfig());
          // Canvas cs = new Canvas(bmp2);
          canvas.scale((float) 0.5, (float) 0.5);
          canvas.drawBitmap(bmp2, new Matrix(), null);
          canvas.drawBitmap(bmp1, new Matrix(), null);
          canvas.save();
  </code></pre>
  
  <p>I got it working by doing this - </p>
  
  <pre><code>    cs = Bitmap.createBitmap(c.getWidth(), c.getHeight(), Bitmap.Config.ARGB_8888);
  
      Canvas comboImage = new Canvas(cs);
  
      comboImage.drawBitmap(s, new Matrix(), null);
      comboImage.drawBitmap(c, new Matrix(), null);
      comboImage.save();
      // this is an extra bit I added, just incase you want to save the new
      // image somewhere and then return the location
  
      String tmpImg = String.valueOf(System.currentTimeMillis()) + ".png";
  
      OutputStream os = null;
      try {
          os = new FileOutputStream("/sdcard/" + tmpImg);
          cs.compress(CompressFormat.PNG, 100, os);
      } catch (IOException e) {
          Log.e("combineImages", "problem combining images", e);
      }
  </code></pre>
  
  <p>Basically it is given here - <a href="http://www.jondev.net/articles/Combining_2_Images_in_Android_using_Canvas" rel="noreferrer">http://www.jondev.net/articles/Combining_2_Images_in_Android_using_Canvas</a></p>