[英]Charts included in Django PDF
我在这里有一个问题,我有一个 html 报告页面,其中包含 JS Highcharts、图像、表格等,我正在寻找将所有内容导出到 PDF 报告(带有表格、图像等) 问题是由于Highcharts(和其他JS图表)在浏览器中呈现,它没有出现在生成的pdf中。 我尝试了 JSPdf 和 PhantomJS,但是使用那些“屏幕截图”生成器,我失去了使用 xhtml2pdf 创建的所有样式和格式(封面和封底、水印等)。 你能帮我一下吗?
我已经解决了。 .- 拥有带有 HighchartsJS 图形的模板。 :- 阅读每个图表 canvas 并将它们存储在自己的隐藏输入中:
(function (H) {
H.Chart.prototype.createCanvas = function (divId) {
var svg = this.getSVG(),
width = parseInt(svg.match(/width="([0-9]+)"/)[1]),
height = parseInt(svg.match(/height="([0-9]+)"/)[1]),
canvas = document.createElement('canvas');
canvas.setAttribute('width', width);
canvas.setAttribute('height', height);
if (canvas.getContext && canvas.getContext('2d')) {
canvg(canvas, svg);
return canvas.toDataURL("image/jpeg");
}
else {
alert("Your browser doesn't support this feature, please use a modern browser");
return false;
}
}
}(Highcharts));
var imageData = $("#ausentismo_tot").highcharts().createCanvas();
$('#aus_tot_image').val(imageData); //Hidden Input
.- 与发布的信息一起旅行并在views.py中处理它:
aus_tot_image = request.POST['aus_tot_image']
.- 使用 xhtml2pdf 的“render_to_pdf_response”打印 pdf 文件:
<img src="{{ aus_inc_image }}" >
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.