在Highcharts导出中使用A3页面

问题描述:

我正在将Highcharts图表和HTML表格导出为PDF,但是当我的表格很大时,它无法正确放置在PDF页面中。在Highcharts导出中使用A3页面

我使用导出PDF:

Highcharts.getSVG = function(charts) { 
    var svgArr = [], 
     top = 0, 
     width = 0; 

    $.each(charts, function(i, chart) { 
     var svg = chart.getSVG(); 
     svg = svg.replace('<svg', '<g transform="translate(0,' + top + ')" '); 
     svg = svg.replace('</svg>', ' <h2 style="position: absolute; color: #333; right: 0px; width: 50%; top: 10px; text-align: center">' + titulo + '</h2></g>'); 

     top += chart.chartHeight; 
     width = Math.max(width, chart.chartWidth); 

     svgArr.push(svg); 
    }); 

    tabela = $("#mainTabela").clone(); 
    top += tabela.height(); 

    svgArr.push('<g transform="translate(0,' + top + ')">' + tabela.html() + ' </g>'); 
    return '<svg height="'+ top +'" width="' + width + '" version="1.1" xmlns="http://www.w3.org/2000/svg">' + svgArr.join('') + '</svg>'; 
}; 

有出口时使用的A3页面的方法吗?或者只是使用更大的页面?表

例由不同的页面分为:

Table divided by pages

你可以设置自己的出口服务器和编辑highcharts-convert.js文件页面大小适应您的期望。

编号: - http://www.highcharts.com/docs/export-module/setting-up-the-server

的问题是,我得到了台克隆的高度,也就是0。所以我PDF的高度始终是图表高度,而忽略了表的大小。

我只是改变:

top += tabela.height(); 

为:

if($("#mainTabela").height() > top) 
     top = $("#mainTabela").height(); 

,它的工作现在