Javascript 从URL添加SVG呈现黑色图像

Javascript 从URL添加SVG呈现黑色图像,javascript,canvas,fabricjs,Javascript,Canvas,Fabricjs,我有一个这个,我试图加载到画布,但它只是渲染黑色图像,所以如何解决它 版本:2.0.0-beta.7 我尝试了loadSVGFromString方法和loadSVGFromURL方法,但没有成功: //Using loadSVGFromString var a = 'svg string'; fabric.loadSVGFromString(a,function(objects, options) { var obj = fabric.util.groupSVGElements(object

我有一个这个,我试图加载到画布,但它只是渲染黑色图像,所以如何解决它

版本:2.0.0-beta.7

我尝试了loadSVGFromString方法和loadSVGFromURL方法,但没有成功:

//Using loadSVGFromString
var a = 'svg string';
fabric.loadSVGFromString(a,function(objects, options) {
  var obj = fabric.util.groupSVGElements(objects, options);
    canvas.add(obj).renderAll();
});

//using loadSVGFromURL
fabric.loadSVGFromURL('URL Here', function(objects,options) {
    var group = new fabric.Group(objects, {
        left: 50,
        top: 50,
    });
    canvas.add(group);
    canvas.renderAll();
});
签出此

“全黑”svg通常是一些无效或不受支持的svg标记的结果。
在您的情况下,我认为您应该从svg中删除
fill opacity=“null”
引用。

是的,非常感谢。我在哪里发现我的svg中哪些引用是无效的?我不知道有什么工具,我只是查看了你的svg,认为它的不透明度值为null。然后我验证了这个属性必须是mozilla上的一个数字(您可以单击):。我认为你的笔划不透明度=“null”btw也是如此,尝试在同一站点上搜索笔划不透明度。但是您是自己创建这些svg还是从程序中导出它们?从矢量工具导出svg时,通常可以解决此类问题。感谢您提供的详细信息,我正在使用第三方网站创建svg。我明白了。如果您想要一个免费的svg生成器,具有良好的svg导出web的可能性,那么我建议您使用InkScape,或者您可以查看GravitDesigner,如果您还没有使用它的话。如果你愿意支付多一点,我会推荐亲和力设计师(我个人最喜欢的)。或者,如果你想举办一个更好但更昂贵的活动,你可以购买AdobeIllustrator。德国劳埃德船级社:)