【发布时间】:2014-08-23 12:53:41
【问题描述】:
我正在使用 Paper.js 和 Node.js 制作简单的绘图应用程序。有2层: - 带有图像的底层 - 用于绘图的顶层。 带有图像的图层是绘图图层的背景。
我想做一个简单的橡皮擦工具来擦除路径上的绘图。我正在尝试在我的顶层添加第二条路径,将 blendMode 设置为“destination-out”。
drawingLayer.activate();
path = new Path();
path.strokeColor = 'black';
path.strokeWidth = 5;
if (mode == "erase") {
path.strokeWidth = 15;
path.blendMode = 'destination-out';
}
我的问题是,这个“destination-out”路径不仅会删除顶层(绘图层)上的所有内容,还会删除底层(图像)上的所有内容。当然,我希望图像不受橡皮擦的影响。当我在 css 中为我的页面设置一些背景时,它不会被橡皮擦路径擦除。
你知道用橡皮擦修改顶层而不修改底层的方法吗?
【问题讨论】:
-
您最终是如何实现此功能的?我发现即使在顶层使用destination-out,也会在底层留下一个白色标记。
标签: javascript node.js canvas paperjs drawing2d