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

标签 android canvas

我有一种情况是要在 Canvas 上绘图。在绘制时,有时我需要通过将剪辑与给定路径相交来更新 Canvas 的剪辑。这很好用。但是,我遇到的情况是我需要为新系列的绘图命令创建一个新的 Canvas,但它需要从以前的 Canvas 剪辑开始。因为 Path 没有公开 intersect() 方法,并且因为 Canvas 没有公开 getCurrentClipPath() 方法,所以我能想到的唯一解决方案是保留以前使用过的路径的列表,并将它们按顺序应用到我的新 Canvas 上。但是,此解决方案对内存和 CPU 有影响。

我是否缺少一种明显的方法来检索 Canvas 的当前剪辑路径,或者使用旧 Canvas 的属性(但不是绘图命令)创建新 Canvas?

最佳答案

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

关于Android:如何获取 Canvas 的当前剪辑路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5356461/

相关文章:

javascript - 如何向html5 Canvas 添加无限数量的图像?

javascript - React分离pdf页面静态

javascript - 图像,onload 事件在 chrome 中不起作用

android - 新的 Google Play 控制台 - 首次应用发布问题的托管发布,一次发布多个版本

android - 对话框打开另一个对话框

java - 使用 Android Studio 构建错误

android - 防止其他应用程序形成捕获/记录屏幕

android - View 中背景可绘制图像的不透明度(使用 XML 布局)

javascript - Fabric Js Canvas 中剪辑部分中的多个对象

canvas - D3 热图 Canvas 的工具提示