2013-10-03 26 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中)? –

+0

试试这个链接:http://stackoverflow.com/a/5176495/1562755 –

+0

我希望答案有帮助 –

4

这是我做到了,我简直不敢相信它是那么容易

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

希望这会帮助其他人。

相关问题