禁用Fabric.js中的组选择

时间:2014-02-07 14:30:38

标签: javascript fabricjs

如何在Fabric.js中禁用组选择并一次保留一个可选的单个对象?对于组选择,我的意思是使用例如选择多个对象。 SHIFT +单击。

3 个答案:

答案 0 :(得分:27)

你可以通过

轻松实现这一目标
  canvas.selection = false; // disable group selection

如果你想在个人对象上

  rect.set('selectable', false); // make object unselectable

答案 1 :(得分:3)

通过选择侦听器画布方法禁用组选择(我认为这是最好的方法)

canvas.on('selection:created', (e) => {
  if(e.target.type === 'activeSelection') {
    canvas.discardActiveObject();
  } else {
    //do nothing
  }
})

答案 2 :(得分:0)

@CQ Smooth 的回答接近我的要求,谢谢。但是我需要在您首先选择一个对象时触发该事件,然后通过 shift+click 添加另一个:

  canvas.on({
      'selection:updated': e => {
        const activeSelection = e.target
        if (activeSelection) {
           canvas.discardActiveObject();
        }
      }
  })

您可以在以下位置查看解决方案:https://app.collagemaker.uk/create