我正在尝试在 Web 应用程序中使用 paper.js,但我一直无法让它与多个 Canvas 一起使用。这就像 Canvas 之间的范围混淆了,所以当我打算在 Canvas 1 上绘制时,它出现在 Canvas 2 上。
在每个 View 中,我都像这样初始化纸张:
this.mypaper = new paper.PaperScope();
this.mypaper.setup($("myCanvasId")[0]);
当我创建新的纸张对象时,我使用的应该是本地范围:
var circle = new this.mypaper.Path.Circle(10, 10, 5);
但是,当我在 view1 中创建一个圆时,它会在 view2 中绘制它。
我读了很多书,但仍然没有找到关于如何设置多个 paperscope 或如何将 View 彼此隔离的明确解释。
有谁知道如何正确使用 paper.js 的多个 Canvas ?
编辑:我创建了一个 jsFiddle 来说明问题:http://jsfiddle.net/94RTX/1/
最佳答案
我没有广泛使用过 Paper.js,但似乎每次调用 Path
都没有使用访问它的 PaperScope
,但是全局 paper
对象。因此,如果您在每次实例化之前将 paper
覆盖为所需的 PaperScope,它应该可以工作。
关于javascript - paper.js 如何仅使用 javascript 设置多个 Canvas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16865863/