如何在android中的第一个图像上的选定点合并两个位图?

时间:2012-07-04 05:25:29

标签: android bitmap drawbitmap

如何将两个不同的图像合并为一个。此外,我需要在第一个图像上的特定点合并第二个图像。它在android中是否可行?

2 个答案:

答案 0 :(得分:1)

我想这个功能可以帮到你:

private Bitmap mergeBitmap(Bitmap src, Bitmap watermark) {
      if (src == null) {
         return null;
      }
      int w = src.getWidth();
      int h = src.getHeight();

      Bitmap newb = Bitmap.createBitmap(w, h, Config.ARGB_8888);
      Canvas cv = new Canvas(newb);

      // draw src into canvas
      cv.drawBitmap(src, 0, 0, null);

      // draw watermark into           
      cv.drawBitmap(watermark, null, new Rect(9, 25, 154, 245), null);

      // save all clip
      cv.save(Canvas.ALL_SAVE_FLAG);

      // store
      cv.restore();

      return newb;
   }

它将水印标记在特定Rect的“src”上。

答案 1 :(得分:1)

这应该有效:

  • 根据位图创建画布对象。
  • 将另一个位图绘制到该画布对象(方法将允许您 专门设置坐标)。
  • 原始Bitmap对象将保存新数据,因为 画布写到它。