Fabricjs: автоматическое изменение размера группы с помощью участников

#fabricjs

#fabricjs

Вопрос:

Codesandbox здесь: https://codesandbox.io/s/inspiring-elgamal-c0ud5?file=/src/Rectangle.jsx

Здравствуйте,

Я пытаюсь автоматически изменять размер группы, когда один из ее членов растет. Когда я рисую прямоугольник на холсте щелчком мыши и перетаскиванием, создается группа, содержащая прямоугольник и текстовое поле. Однако размер всей группы не изменяется с помощью прямоугольника. Может кто-нибудь помочь мне решить эту проблему? Спасибо.

Комментарии:

1. хотите ли вы при создании нового объекта добавить старый в текущий выделенный объект?

2. Каждый раз, когда я нажимаю и перетаскиваю, я хочу создать прямоугольник и связанный текст, поэтому я должен их сгруппировать. Группа просто не хочет изменять размер с помощью прямоугольника.

3. вы не возражаете, если я напишу вам на машинописном языке, как я бы поступил, просто чтобы дать вам представление? в принципе, я бы создал активный выбор?

4. просто добавил рабочий пример и исправление кода к моему ответу.Best

Ответ №1:

Я бы попробовал использовать активное выделение при наведении курсора мыши

     canvas.discardActiveSelection()
    const activeSelelection = new fabric.ActiveSelection([rect, text], {
      canvas: canvas
    });
    canvas.setActiveObject(activeSelection)
  

рабочий codesandbox