平移后,我无法获取画布的边框进行更新。我尝试过requestRenderAll
并重置每个对象的坐标,但是边界框保持在同一位置。
我应该调用其他功能吗?
我尝试过的事情:
if (!pausePanning && e.self.x && e.self.y && e.e.type) {
currentX = e.self.x;
currentY = e.self.y;
xChange = currentX - panX;
yChange = currentY - panY;
if( (Math.abs(xChange) <= 100) &&
(Math.abs(yChange) <= 100) ) {
var delta = new fabric.Point(xChange, yChange);
canvas.relativePan(delta);
}
panX = e.self.x;
panY = e.self.y;
// attempting to redraw bounding
canvas.getObjects().forEach(function(o) {
o.setCoords();
});
// this also doesn't work
canvas.requestRenderAll();
}
}
canvas
变量的示例:var sel = new fabric.ActiveSelection(selection, { canvas: canvas });
canvas.setActiveObject(sel).requestRenderAll();
以及显示更新后的选择的缩放/平移的jsfiddle。>>