ширина и высота изображения не отображаются должным образом на холсте с помощью fabric js

#javascript #html #canvas #fabricjs

Вопрос:

Я использую Fabricjs для загрузки изображений с текущим кодом.

компонент изображения ткани не отображается должным образом в соответствии с фактическим размером изображения.

вот мой JS-код

          function addiMage(data) {
            let myImg = './layers/'   data.name   ".png";
            let left = data.bounds.left;
            let top = data.bounds.top
            let scaleX = data.bounds.width;
            let scaleY = data.bounds.height
            let blendOptions = data.blendOptions;
            let index = data.index;
             fabric.Image.fromURL(myImg, function (oImg) {
                    oImg.set({
                        'left': left,
                        'top': top,
                        opacity: blendOptions.opacity,
                
                       
                    });
                   oImg.scaleToHeight(scaleY);
                   oImg.scaleToWidth(scaleX);
                                      
                   canvas.add(oImg);


              
                });
                

           
        }


 

Ответ №1:

Я установил размер изображения таким образом, его можно использовать

 fabric.Image.fromURL(myImg, (oImg) => {
      oImg.scale(0.3).set({
        left: setLeft(3),
        top: setTop(6),
        backgroundColor: "orange",
        width: oImg._element.naturalWidth,
        height: oImg._element.naturalHeight,
      });

      canvas.add(oImg);
    });