我正在使用fabric.js将SVGgraphic加载到画布中.因为通过loadSVGFromURL加载它在IE9中不起作用,所以我决定使用loadSVGFromString.
现在SVG已加载并显示在IE9中,但渐变消失了.我对SVG Markup不太熟悉,但它看起来好像radialGradient被正确标记了.
标记是否不正确或fabric.js是否错误地解析了标记?
我举了一个简单的例子:http: //jsfiddle.net/t8bx5/
var canvas; $(function() { var svg, jsonCanvas; svg = new String(''); canvas = new fabric.Canvas('canvas'); fabric.loadSVGFromString(svg, function(objects, options) { var obj = fabric.util.groupSVGElements(objects, options); canvas.add(obj).centerObject(obj).renderAll(); obj.setCoords(); }); });
编辑:
下面是一个正确解析渐变的示例,在canvas2中,loadSVGFromURL在IE9中不起作用:http: //jsfiddle.net/t8bx5/1/
另一个渐变不正确/不存在的例子:http: //jsfiddle.net/t8bx5/2/