仅在移动,缩放和旋转时渲染选定对象

时间:2013-05-06 06:43:59

标签: javascript fabricjs photos

我目前正在制作一个“Photo Collage Maker”项目,该项目需要更大的画布区域和数百个对象(文本,图像,形状,剪贴画等)。问题是在移动,缩放和旋转这些对象时,Fabric.js渲染所有使它太慢的对象。我想只在织物画布上呈现所选对象。我已经测试了renderOnAddition,renderTop但它们并不是我想要的。

我想要以下内容:

canvas.on('object:moving', function(e) {
    var activeObject = e.target;
    //canvas.renderAll();
    canvas.renderObjects(activeObject);
});

现在我需要像canvas.renderAll()这样的方法,而不是canvas.renderObjects(activeObject)。如何在Fabric.js中实现此功能?

这是我的项目:Edit Photos For Free

2 个答案:

答案 0 :(得分:0)

最好的办法是在主要画布前放置第二块画布,在其上移动/缩放/旋转当前项目。

您提到想要在布料画布上呈现所选对象,因此这应符合您的要求。

在结束移动/缩放/旋转时,您必须恢复原始画布元素,应用更改并允许它进行完全重绘。

答案 1 :(得分:0)

可能有很多renderAll()方法

请检查是否需要使用requestRenderAll()方法