2017-08-28 242 views
1

我需要合併兩個圖像,一個在另一個之上。我有第一個圖像(background.png),它有一個透明的部分。我想把另一個圖像(image.png)放在background.png之上。Android合併兩張圖像,另一張合併兩張圖像

但是,對於創建的最終圖像,我只希望image.png的一部分與bakground.png的透明部分重疊顯示,新圖像的其餘部分將顯示背景。

這是我合併圖像的代碼,但我不確定如何從這裏開始。謝謝。

public class MainActivity extends ActionBarActivity { 

private ImageView collageImage; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    collageImage = (ImageView)findViewById(R.id.imageView3); 

    Button combineImage = (Button)findViewById(R.id.combineimage); 
    combineImage.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Bitmap bigImage = BitmapFactory.decodeResource(getResources(), R.drawable.multiple); 
      Bitmap smallImage = BitmapFactory.decodeResource(getResources(), R.drawable.multipletwo); 
      Bitmap mergedImages = createSingleImageFromMultipleImages(bigImage, smallImage); 

      collageImage.setImageBitmap(mergedImages); 
     } 
    }); 
} 

private Bitmap createSingleImageFromMultipleImages(Bitmap firstImage, Bitmap secondImage){ 

    Bitmap result = Bitmap.createBitmap(firstImage.getWidth(), firstImage.getHeight(), firstImage.getConfig()); 
    Canvas canvas = new Canvas(result); 
    canvas.drawBitmap(firstImage, 0f, 0f, null); 
    canvas.drawBitmap(secondImage, 10, 10, null); 
    return result; 
} 
} 

回答

0

嘗試使用2個在視圖中重疊的圖像。也許使用Relative佈局來定位他們想要的方式。然後,您將爲每個iamgeview設置圖像,並將它們「合併」。

相關問題