此问题与HTMLtoPDF Converter有关。
mPDF转换器可以正常使用包含的css,但不能使用任何Bootstrap Table或任何svg元素。
如何在html中为mPDF包含js?
答案 0 :(得分:3)
mPDF不支持JavaScript。但是,您可以使用以下方法之一:
使用$('svg')[0].outerHTML
之类的内容检索图表的SVG代码,并将其发送到服务器,以生成的PDF作为图像插入。
使用Highcharts导出服务生成可插入PDF的图像(SVG或其他格式)。代码如下:
var chart = $('.mychart').highcharts();
var opts = chart.options; // retrieving current options of the chart
opts = $.extend(true, {}, opts); // making a copy of the options for further modification
delete opts.chart.renderTo; // removing the possible circular reference
/* Here we can modify the options to make the printed chart appear */
/* different from the screen one */
var strOpts = JSON.stringify(opts);
$.post(
'http://export.highcharts.com/',
{
content: 'options',
options: strOpts ,
type: 'image/svg+xml',
width: '1000px',
scale: '1',
constr: 'Chart',
async: true
},
function(data){
var imgUrl = 'http://export.highcharts.com/' + data;
/* Here you can send the image url to your server */
/* to make a PDF of it. */
/* The url should be valid for at least 30 seconds */
}
);
您可以在http://export.highcharts.com/上体验不同的通话选项。另请参阅http://www.highcharts.com/docs/export-module/export-module-overview
请注意,mPDF不支持某些SVG属性,因此您可以考虑将图表导出为光栅图像。