0

根据本教程,我成功运行了以下(简化)示例:

phantomjs highcharts-convert.js -infile options1.json -outfile chart1.png -width 300 -constr Chart

我可以将输出文件扩展名更改为.jpgor.pdf并获得预期的输出,但是当我将其更改为成功创建.svgchart1.svg文件时,它是空的。

来自highcharts-convert.js,以下是写入该文件失败的说明:

fs = require('fs');
...
svgFile = fs.open(output, "w");
svgFile.write(svg);

我检查了console.log(svg)svg不是空的,所以有罪的是,svgFile.write(svg);但为什么呢?

我正在运行 Mac OS X。

4

1 回答 1

2

这是 Highcharts 中的错误,写入流后,流应该被关闭,所以应该是这样的:

                if (!runsAsServer) {
                    // write the file
                    svgFile = fs.open(output, "w");
                    svgFile.write(svg);
                    svgFile.close(); //add this line
                    exit(output);
                } else {
                    // return the svg as a string
                    exit(svg);
                }

报道:https ://github.com/highslide-software/highcharts.com/issues/1869

于 2013-05-23T15:26:54.407 回答