在d3.js

时间:2017-03-11 10:18:17

标签: javascript d3.js svg

我正在尝试按照指示here将svg元素保存为png。它表示使用 saveSvgAsPng(document.getElementById(“diagram”),“diagram.png”); 其中“diagram”是svg元素的id。现在我无法找到id。

                    function guid() {
                    function _p8(s) {
                        var p = (Math.random().toString(16)+"000000000").substr(2,8);
                        return s ? "-" + p.substr(0,4) + "-" + p.substr(4,4) : p ;
                    }
                    return _p8() + _p8(true) + _p8(true) + _p8();
                }
                var svg = d3.select("#hiddenblock").append("svg")
                    .attr("svgid",guid())
                    .attr("width", width + margin.left + margin.right)
                    .attr("height", height+300+ margin.top + margin.bottom)
                    .append("g")

                    .attr("transform", "translate(" + margin.left + "," + margin.top + ")");

上面我试着给 var svg 一个id名称 svgid 然后在的位置实现它,但是在浏览器控制台中说未捕获错误:需要HTMLElement或SVGElement;得到了。我尝试使用 hiddenblock ,但它不起作用。

浏览器输出的示例为here。看来这个元素有一个id,但saveSvgAsPng()函数似乎没有认出它。

0 个答案:

没有答案