우선 소스코드입니다.

 

 public void onDraw(Canvas canvas){
      
      Paint pnt = new Paint();
      pnt.setAntiAlias(true);
      
      Bitmap music2 = BitmapFactory.decodeResource(getContext().getResources(), R.drawable.aa);
      Bitmap music3 = BitmapFactory.decodeResource(getContext().getResources(),R.drawable.bb);
      ComposeShader comp = new ComposeShader(new BitmapShader(music2, TileMode.REPEAT, TileMode.REPEAT),
        new BitmapShader(music3, TileMode.REPEAT, TileMode.REPEAT),
        new PorterDuffXfermode(PorterDuff.Mode.SCREEN));

   pnt.setShader(comp);
   canvas.drawRect(0, 0,
     BitmapFactory.decodeResource(getContext().getResources(),R.drawable.aa).getWidth(),
     BitmapFactory.decodeResource(getContext().getResources(),R.drawable.bb).getHeight(),
     pnt);
}


두개의 이미지를 Bitmap으로 받아서 ComposeShader로 오버레이를 하려고 합니다.

 

1. ComposeShader로 만들어진 결과를 이미지파일로 저장하려면 어떻게 해야 될까요?

 

2. 현재 소스는 R.drawable.*라는 리소스를 받아서 오버레이를 시켰는데요.

카메라로 찍은 사진을 불러와서 ComposeShader에 넣으려면 어떻게 해야 될까요?