我正在创建一个包含多个表格的pdf文件,并且在页面底部也有一个徽标。问题是我的桌子太长了,覆盖了徽标。如果表格超过Y点,是否可以在另一页上绘制一些行?
const tableBody = [
['column1', 'column2'],
['column1', 'column2'],
['column1', 'column2'],
// some more rows to fill the page
];
doc.autoTable({
startY: currentY,
head: [['1', '2']],
margin: { left: 8, right: 8 },
body: tableBody,
styles: { font: 'roboto', halign: 'left' },
headStyles: { fontStyle: 'roboto', fillColor: COLORS.BASIC },
columnStyles: {
0: { cellWidth: 10 },
1: { cellWidth: 150 },
},
});
预期结果是显示图像并在另一页上继续显示表格。
这就是现在的样子:https://i.imgur.com/IR89VjM.png,但我希望将徽标的首页上的最后两行移到下一页。
答案 0 :(得分:0)
这可以通过在autoTable设置中添加一个底边距来完成(该值将对应于totalPageHeight - logoPositionY
)。
注意:如果表格跨越多个页面,则页边距将应用于所有页面(但是可以假定每个页面都带有徽标,在这种情况下,优点多于问题)。
doc.autoTable({
startY: currentY,
head: [['1', '2']],
margin: { left: 8, right: 8, bottom: yourValue },
//etc
});
其他提示:您可以使用设置rowPageBreak: 'avoid',
来防止当单元格具有不同的高度时,该行在页面上分开。