0

私は関数を使用して2つのビットマップファイルを相互にマージし、オーバーレイします。 私はOneAnotherでこの関数をオーバーレイするためにこの関数を使用しています。オーバーレイ機能ビットマップが正しく動作しない

public static Bitmap combineImages(Bitmap cameraImage, Bitmap visionImage) { // can add a 3rd parameter 'String loc' if you want to save the new image - left some code to do that at the bottom 

    Bitmap finalImage = null; 
     int width, height = 0; 
      width = cameraImage.getWidth(); 
      height = cameraImage.getHeight(); 

     finalImage = Bitmap.createBitmap(width, height, cameraImage.getConfig()); 

     Canvas canvas = new Canvas(finalImage); 

     canvas.drawBitmap(cameraImage, new Matrix(), null); 
     canvas.drawBitmap(visionImage, new Matrix(), null); 

     // 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(loc + tmpImg); 
      finalImage.compress(CompressFormat.PNG, 100, os); 
     } catch(IOException e) { 
      Log.e("combineImages", "problem combining images", e); 
     }*/ 

     return finalImage; 
     } 

しかし、この画像を保存した後、私はそれらの画像を組み合わせて表示します。オーバーレイではありません。私はそれをもう一つのオーバーレイにしたい。

私がこの機能でどこが間違っているか教えてください。おかげさまで

+0

をね。 –

+0

私の最初の画像はcameraPictureのもので、TransperentLayerの2番目のものです。ですから、私はFirstOne ImageにオーバーレイされるべきSecond ImageのTranserent Imageを必要とします。 –

+0

私の答えを参照してください。 –

答えて

1

この2つのビットマップをオーバーレイする機能である、あなたはビットマップの1つのオーバーレイ別などを組み合わせたい

private Bitmap overlayMark(Bitmap bmp1, Bitmap bmp2) { 
    int bh = originalBitmap.getHeight(); 
    int bw = originalBitmap.getWidth(); 
    Bitmap bmOverlay = Bitmap.createBitmap(bw,bh,Bitmap.Config.ARGB_8888); 
    Canvas canvas = new Canvas(bmOverlay); 
    canvas.drawBitmap(bmp1, 0, 0, null); 
    canvas.drawBitmap(bmp2, 0,0, null); 
    return bmOverlay; 
} 
+0

私はあなたの機能を使用しましたが、結果は前と同じです。私は2つの画像をお互いの上に重ねたい。しかし、保存されたイメージは互いに結合して1つのイメージファイルに別々に表示されるように見えます。 –

+0

あなたの答えは私のために働くつもりはありません。私は前に取得したのと同じ結果を得た –

+0

あなたが得ることができるスクリーンショットを投稿することができます。 –

関連する問題