Android:如何获取Canvas的当前剪辑路径?

时间:2011-03-18 18:45:27

标签: android canvas

我有一种情况,我正在绘制画布。在绘制时,我有时需要通过将剪辑与给定路径相交来更新“画布”剪辑。这非常有效。但是,我需要为新系列的绘图命令创建一个新的Canvas,但它需要从之前的Canvas剪辑开始。因为Path不公开intersect()方法,并且因为Canvas没有公开getCurrentClipPath()方法,所以我能想到的唯一解决方案是保留以前使用的路径列表,并将它们顺序应用到我的新画布。但是,这个解决方案有内存和cpu分支。

我是否错过了一种明显的方法来检索Canvas的当前剪辑路径,或者使用旧版画面创建新的画布(但不是绘制命令)?

1 个答案:

答案 0 :(得分:1)

您应该在安装新剪辑区域之前使用Canvas.save(),然后在想要返回旧剪辑区域时使用Canvas.restore()。