我在html中使用javascript加载了动态元素。(像图表这样的例子)。我想将这些图表导出为pdf格式。但是当我尝试的时候,我没有它们,我只有像h5一样的静态html
你可以在下面的例子中看到,画布部分是空的,然后使用Chart.js加载。
<div id="stats">
<div class="card mb-4">
<div class="card-body">
<h5 class="card-title text-uppercase">Nombre adherents / mois</h5>
<canvas id="myChartInscription"></canvas>
</div>
</div>
</div>
<a class="btn btn-primary" id="exportPDF" href="#">Export PDF</a>
<div id="editor"></div>这就是我正在尝试的
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/0.9.0rc1/jspdf.min.js"></script>
<script>
var doc = new jsPDF();
var specialElementHandlers = {
'#editor': function (element, renderer) {
return true;
}
};
$('#exportPDF').click(function () {
doc.fromHTML($('#stats').html(), 15, 15, {
'width': 170,
'elementHandlers': specialElementHandlers
});
doc.save('stats.pdf');
});
</script>谢谢你的帮助。
发布于 2019-01-29 21:32:59
你必须将画布保存为数据url,因为jsPdf的"fromHtml“不支持画布渲染。
https://stackoverflow.com/questions/54421969
复制相似问题