angularjs - JsPDF 不准确地显示表格
问题描述
我正在尝试使用 JsPDF 和 HTML2Canvas 创建可下载的 PDF 文件。我正在使用 AngularJs。HTML 内容包含几个长表格,有时是 PDF 宽度的 3-4 倍。尽管 PDF 最终接近完美,但我遇到了几个缺陷:
- 表格列有时不会在 PDF 中显示其各自的值(部分数据或无数据)
- 如果未提供日期字段,则 PDF 中的表格默认为 12/31/9999
- 单行表将其所有值左移一位。结果,没有记录/ID,并且最后一列值未定义。
- 我试着弄乱边距和内容宽度。不幸的是,只有 margin.top/left 有任何效果。
这是我使用的代码:
$scope.savePdfSample = function(value) {
html2canvas(document.body,{
onrendered:function(canvas){
var doc = new jsPDF('l', 'pt', 'letter'),
source = $("#template_invoice")[0], //not sure what this does
margins = {
top: 40,
bottom: 40,
left: 40,
right:40,
width: 1000,
};
doc.fromHTML(
$("#ccsReport1").html(),
margins.left,
margins.top,
{
'width': margins.width,
},
function(dispose) {
doc.save('CCS Case Details.pdf');
},
margins
);
}
});
};
我试过弄乱 jspdf.debug.js 文件,但我还没有找到解决方案。我很感激有人指出我正确的方向。谢谢你。