【问题标题】:How to combine multiple images into a single image in android?如何在android中将多个图像组合成一个图像?
【发布时间】:2013-03-01 06:32:09
【问题描述】:

我正在开发 android 的分布式应用程序。我已将单个图像拆分为 4 个部分,然后对其进行处理。现在我想将 4 个位图图像组合成一个图像。我该怎么做?

【问题讨论】:

标签: android image


【解决方案1】:
Bitmap[] parts = new Bitmap[4];
Bitmap result = Bitmap.createBitmap(parts[0].getWidth() * 2, parts[0].getHeight() * 2, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(result);
Paint paint = new Paint();
for (int i = 0; i < parts.length; i++) {
    canvas.drawBitmap(parts[i], parts[i].getWidth() * (i % 2), parts[i].getHeight() * (i / 2), paint);
}

像这样的东西 =)

【讨论】:

    【解决方案2】:

    以下代码可以帮助您将四个位图合二为一。 调用此方法 3 次,将四张图片合并。

    第 1 步:合并前两张图片

    第2步:合并重命名的两张图片

    第 3 步:合并两个新创建的位图

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

    【讨论】:

      【解决方案3】:

      你需要创建一个位图类型的函数。也就是说,它返回一个位图数据类型。该函数应该有一个数据类型 Bitmap 的参数,它是一个数组。

      Download demo here

      您会将图像作为位图数组传递给函数。这是我们的功能,不仅可以合并四张图像,还可以合并任意大小的图像。

      private Bitmap mergeMultiple(Bitmap[] parts){
      
          Bitmap result = Bitmap.createBitmap(parts[0].getWidth() * 2, parts[0].getHeight() * 2, Bitmap.Config.ARGB_8888);
          Canvas canvas = new Canvas(result);
          Paint paint = new Paint();
          for (int i = 0; i < parts.length; i++) {
              canvas.drawBitmap(parts[i], parts[i].getWidth() * (i % 2), parts[i].getHeight() * (i / 2), paint);
          }
              return result;
          }
      

      你终于完成了..Read more here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-04-30
        • 2015-09-25
        • 1970-01-01
        • 2015-12-23
        • 1970-01-01
        • 1970-01-01
        • 2014-01-05
        • 2016-12-23
        相关资源
        最近更新 更多