我的示例(只需点击"导出PDF"):https://jsfiddle.net/j9vaqpnz/7/
我的示例导出了我的表,如下所示:
然后使用库jspdf和autotable将表格导出为pdf。
在导出功能期间,我使用" drawCell"函数和包含数字的所有列i右对齐它们如下:
drawCell: function (cell, data) {
var col = data.column.index;
if(col==3 || col==5 || col==6 || col==7 || col==8 || col==9 || col==10){
cell.styles.halign = 'right';
}
}
问题:在PDF中,我右对齐的所有列都正确定位,它看起来像这样:
这是一个错误吗?或者也许我正在使用" drawCell" inproperly?
答案 0 :(得分:3)
使用“createdCell”和“createdHeaderCell”时,右对齐可正确定位元素。
更新示例:https://jsfiddle.net/j9vaqpnz/10/
新守则:
...
createdHeaderCell: function (cell, data) {
alignCol(cell, data);
},
createdCell: function (cell, data) {
alignCol(cell, data);
}
...
function alignCol(cell, data){
var col = data.column.index;
if(col==3 || col==5 || col==6 || col==7 || col==8 || col==9 || col==10){
cell.styles.halign = 'right';
}
}
答案 1 :(得分:1)
您可以使用 columnStyles
属性对齐单元格
const pdf = new jsPDF();
pdf.autoTable({
...
columnStyles: {
3: {
halign: 'right'
},
5: {
halign: 'right'
},
6: {
halign: 'right'
},
7: {
halign: 'right'
},
8: {
halign: 'right'
},
9: {
halign: 'right'
},
10: {
halign: 'right'
}
}
});