我正在使用最新版本的Fabirc.js
。这就是我cloning
图片的方式。
var object = fabric.util.object.clone(_canvasObject.getActiveObject());
object.set("top", object.top+10);
object.set("left", object.left+10);
_canvasObject.add(object);
_canvasObject.renderAll();
但是,如果将图像过滤器应用于克隆的对象,则原始对象也会共享它。如何解决呢?
最佳答案
您正在调用的clone函数是一个对象克隆实用程序,它在克隆的第一级停止。它不会遍历作为对象的属性。
要正确克隆图像,请使用:
_canvasObject.getActiveObject().clone(function(cloned) {
cloned.set("top", cloned.top+10);
cloned.set("left", cloned.left+10);
_canvasObject.add(cloned);
});