2013-10-03 1 views
1
Paint mPaint = new Paint(); 
mPaint.setStyle(Style.FILL); 
mPaint.setColor(Color.Red); 
canvas.drawRect(mRedPaddleRect, mPaint); 

여기 mRedPaddleRect는 Rect를 사용하여 만들어지고 대신 이미지를 설정하려는 색상으로 설정되는 사각형입니다.색상 대신 페인트 객체로 이미지를 설정할 수 있습니까?

어떻게이 작업을 수행 할 수 있습니까?

도움을 주시면 감사하겠습니다.

감사합니다.

+0

비트 맵을 사용할 수 있습니다. –

+0

이미지를 캔버스에 바로 추가하고 싶습니까 ?? –

+0

캔버스 전체가 아니라 내가 만든 Rect 개체입니다. –

답변

2
Bitmap workingBitmap = Bitmap.createBitmap(result); 
    Bitmap mutableBitmap = workingBitmap 
      .copy(Bitmap.Config.ARGB_8888, true); 

     Canvas canvas = new Canvas(mutableBitmap); 

넣고 여기에

 Paint paint = new Paint(); 

    paint.setColor(context.getResources().getColor(R.color.text_color)); // Text 

     paint.setStrokeWidth(12); // Text Size 
     paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER)); // Text 
                       // Overlapping 
                       // Pattern 
     // some more settings... 

     canvas.drawBitmap(mutableBitmap, RECTsrc, RECTdst, paint); 

코드이 희망 같은 것을 시도 페인트이 내가 그것을 어떻게, 나는 그것을 믿을 수 없었다됩니다

+0

그래, 고마워! 이 방법을 시도해 볼 것이지만 이미지의 경로를 어디에 표시해야합니까? (Drawable of Resource에 저장됩니다)? –

+0

이 링크를 시도해보십시오. http : //stackoverflow.com/a/5176495/1562755 –

+0

답변이 도움이 되었기 때문에 –

4

가 쉽게

이었다 도움
 Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(),R.drawable.racquet); 
     canvas.drawBitmap(bitmap, null, mRedPaddleRect, mPaint); 

다른 사람들에게도 도움이되기를 바랍니다.

관련 문제