我有以下代码,单击pdf后会生成一个数据表pdf。在定制功能中,我有一个页脚代码,该代码应该显示页码。
$(document).ready(function () {
//SHOW EXSITING LINE ITEMS
var id = @Model.Order.Id;
table = $("#orders").DataTable({
dom: 'Bfrtip',
buttons: [
{
text: 'Download PDF',
extend: 'pdfHtml5',
className:'btn btn-primary',
orientation: 'landscape',
},
customize: function (doc) {
//set header
doc.content[0].text = "SALES ORDER";
doc.page
doc.pageMargins = [10, 10, 10, 10];
doc.defaultStyle.fontSize = 12;
doc.styles.tableHeader.fontSize = 14;
doc.styles.title.fontSize = 14;
// Set page title
doc.content[0].text = "SALES ORDER";
// Create a footer
doc.footer = (function (page, pages) {
return {
columns: [
'This is your left footer column',
{
// This is the right column
alignment: 'center',
text: ['page ', { text: page.toString() }, ' of ', { text: pages.toString() }]
}
],
margin: [10, 0]
}
});
}
}
],
我已经添加了如上所示的页脚代码,但似乎无法在pdf中获取页脚。我在这里做错了什么?
答案 0 :(得分:0)
基本上,页脚没有剩余空间。您可以使用doc.pageMargins
来增加页面底部的可用空间,例如
doc.pageMargins = [10, 10, 45, 20]
还必须注意页脚的边距和大小。在页脚的左边有一些文本,右边的页码可能是这样的:
doc.footer = function(page, pages) {
return {
margin: [5, 0, 10, 0],
height: 30,
columns: [{
alignment: "left",
text: 'This is your left footer column',
}, {
alignment: "right",
text: [
{ text: page.toString(), italics: true },
" of ",
{ text: pages.toString(), italics: true }
]
}]
}
}
答案 1 :(得分:0)
您需要调整页边距 pdfmake github issue