首页 文章

FabricJS从SVG加载为Canvas Objects而不是path

提问于
浏览
1

当我将SVG加载到Canvas时,我将类型视为路径和路径数组 . 是否可以将类型(对象)设置为“Circle”,“Rect”,“Line”等,具体取决于路径而不是路径?或者是否可以将路径转换为Canvas标准对象,如circle,Rect等?

1 回答

  • 0

    我有同样的问题,这里有描述:FabricJs - Clipping area by SVG object .

    我解决了这个问题,通过引入像“M0,0H63.7V63.7H0Z”(rect)这样的SVG坐标并创建FabricJS路径:

    fabric.loadSVGFromURL('object.svg', function (objects, options) {
                let img1 = new fabric.Path(objects[0].d, {
                    fill: '#333',
                    opacity: 1,
                    hasBorders: true,
                    hasControls: true,
                    hasRotatingPoint: true,
                    selectable: true,
                    preserveObjectStacking: true,
                    objectCaching: false,
                });
         }
    

    现在你有一个有效的FabricJS对象:)另外,要实现这一点,我必须将我的svg图像组合成路径,没有任何多边形和其他SVG元素 .

相关问题