如何在clipTo后克隆图像对象?

时间:2018-06-08 11:06:49

标签: javascript html5-canvas fabricjs

我试图用svg形状剪辑后克隆Fabricjs图像对象。但是当我尝试克隆时,我在控制台上看到如下错误:

"未捕获的ReferenceError:loadedMask未在klass.eval [as clipTo]中定义(eval at _initClipping(fabric.js:451)........"

我的clipTo代码如下:

// loadedMask is a svg file, loaded with loadSVGFromURL
loadedMask.set({
    left: 0,
    top: 0,
    scaleX:scale_factor,
    scaleY:scale_factor,
    originX: 'center',
    originY: 'center'
}).setCoords();

loadedMask.objectCaching = false;

selectedObj.set({
    clipTo: function(ctx) {
        loadedMask.render(ctx);
    }
});

剪辑效果很好。但剪辑后,当我尝试克隆时,我在控制台上看到一个错误。我的克隆代码如下:

var newobj = obj.clone();
newobj.set("top", newobj.top+30);
newobj.set("left", newobj.left+30);
active_canvas.add(newobj);
active_canvas.renderAll();

我认为我应该改进克隆代码,但我需要一个想法,我被卡住了。感谢。

注意: 我使用的是1.7.22版本

0 个答案:

没有答案