使用svg2pdf.js生成具有Highcharts(多个系列)图表的PDF会引发错误

时间:2019-02-15 15:20:03

标签: svg highcharts pdf-generation

在图表具有多个系列(线系列和列系列)的情况下,如果禁用了列系列并生成了PDF,则当尝试使用Acrobat Reader打开时,生成的PDF会引发错误。 如果在浏览器中打开,则同一PDF不会显示错误。 另外请注意,如果禁用行系列并且输出PDF仅具有列系列,则不会发生相同的问题。

请参阅JSFiddle:https://jsfiddle.net/xL2q75vr/1/

$('#download1series').click(()=>{
   var svg = document.getElementById('chart-container').querySelector("svg"),
   pdf = new jsPDF('l', 'pt', [chart.chartWidth, $(window).height()]);
svg2pdf(svg, pdf, {
removeInvalid: true,
scale: 72 / 96, // this is the ratio of px to pt units
 });

 pdf.save('output.pdf');
});

为什么仅在使用Acrobat Reader打开PDF时才会引发错误?请帮忙。

注意:svg2pdf.js用于将Highcharts生成的图表导出为pdf,而不是Highcharts的默认PDF导出功能,因为生成的pdf也应具有html内容(带图标的页眉和页脚) 以及图表。

1 个答案:

答案 0 :(得分:0)

仅供参考:此问题已解决。在这里检查:https://github.com/yWorks/svg2pdf.js/issues/71