如何将一个画布复制到另一个画布?

时间:2014-01-12 11:28:13

标签: android android-canvas

我已经将一些rects绘制到画布中,我想将这些rects复制到另一个画布中。通常讨论的使用位图的解决方案不起作用,因为我没有在这个画布中使用位图,没有图像只有那些rects。

我该怎么做?

2 个答案:

答案 0 :(得分:2)

您是否尝试在绘制到第一个画布时保存给予矩形的属性,然后根据这些属性在第二个画布上重绘它们?也许您可以尝试为第一个画布创建一个Rect对象并将其传递给第二个画布上的Canvas.drawRect()?

答案 1 :(得分:0)

您可以使用画布创建位图,然后在该位图上绘制。

bitmap =  Bitmap.createBitmap(50,50,Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
// drawn some rects into canvas 

现在您可以使用位图在您想要的任何画布上绘图;

Canvas canvas1 = new Canvas(bitmap);
Canvas canvas2 = new Canvas(bitmap);  

或者如果你已经有了画布:

canvas.drawBitmap(bitmap, 0, 0, paint);

这样你只能绘制一次rects而不是每个画布。