我需要一个表被打印为pdf,而不是解雇css绑定到该表。我也在使用angularjs。我正在寻找不同的方法,我正在试验jsPDF。
在主页(rollup.html)上,我有一个链接,可以将表格导出为pdf格式。
<a style="float: right;" href="genPDF()">PDF TEST</a> 在控制器的js (rollup.js)中,我有一个genPDF函数,它应该显示id #testDiv中包含的所有内容。
app.controller('Rollup', function($scope, $rootScope, $http, $uibModal, headersvc, locFiltersvc) {
....
function genPDF(){
html2canvas(document.getElementById("testDiv"), {
onrendered: function (canvas) {
var img = canvas.toDataURL("image/png");
var doc = new jsPDF();
doc.addImage(img, 'JPEG',20,20);
doc.save('test.pdf');
}
});
}
});当然,我将testDiv分配给了包含要打印的表的div (位于route.html中)
<div class="content-div" style="overflow: visible;" id="testDiv">
....
</div>我有另一个按钮,可以使用ng-click来处理其余的选项卡,并从没有css的更简单的其他表中广播数据。我不确定是否应该尝试使用ng-click和广播表数据来打印表,但也要使用所有css。
<li style="float: right;">
<button ng-click="printDiv('rollup-tab')">Printer Friendly</button>
</li>控制台中没有显示jsPDF方法的错误,因此不确定问题是什么。任何帮助都是非常感谢的。谢谢
发布于 2017-02-14 07:11:14
我强烈建议您通过此link查看GitHub上的jsPDF - AutoTable库。我最近遇到了一个与您非常相似的场景,发现在这种情况下维护CSS很困难。此解决方案适用于许多用例,并且比依靠jsPDF本身更高效、更有效地解决了我的问题。希望这能有所帮助!
https://stackoverflow.com/questions/42213552
复制相似问题