我正在尝试在fabric.js中创建一个可修改的三次贝塞尔曲线。 我现在遇到的问题是,当我通过拖动控制点来更新曲线时,曲线的边界矩形将不会更新。
我这里有一些(丑陋的)代码: http://codepen.io/andershj/pen/PbwqzX?editors=1000
从示例中可以看出,更新曲线后边界矩形不会更新。
是否有更新/重新计算边界矩形的方法?
...
canvas.on({
'object:modified' : onObjectModified
});
function onObjectModified(e) {
canvas.setActiveObject(e.target.line.curve);
// Is there a method to recalculate the bounding rect when object is modified?
}
...
答案 0 :(得分:1)
这有点棘手,但你可以这样解决:
function onObjectModified(e) {
e.target.line.curve.pathOffset = null;
e.target.line.curve._setPositionDimensions({});
canvas.setActiveObject(e.target.line.curve);
}