我尝试了很多方法,但要么限制了pdf中的列数,要么它们有高度限制。 而对于excel,当我在MAC中打开时,它会显示HTML。 任何人都可以通过任何方式建议我可以用超过4列导出pdf并且对行数没有限制。
答案 0 :(得分:2)
您可以尝试使用jsPDF库来执行此操作
HTML
<table id="table">
<thead>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
<th>Column 4</th>
<th>Column 5</th>
<th>Column 6</th>
</tr>
</thead>
<tbody>
<tr>
...
</tr>
</tbody>
</table>
<export-to-pdf elem-id="table"></export-to-pdf>
JS
app.directive('exportToPdf', function(){
return {
restrict: 'E',
scope: {
elemId: '@'
},
template: '<button data-ng-click="exportToPdf()">Export to PDF</button>',
link: function(scope, elem, attr){
scope.exportToPdf = function() {
var doc = new jsPDF();
console.log('elemId 12312321', scope.elemId);
doc.fromHTML(
document.getElementById(scope.elemId).innerHTML, 15, 15, {
'width': 170
});
doc.save('a4.pdf')
}
}
}
});
在我的JSFiddle中example我没有达到列的限制,但是我没有找到关于添加css的解决方案,所以你必须为html代码做内联样式