我已经去过这个帖子Set Column width when exporting to pdf when using datatables net,但它差不多一年了,并没有解决我的问题。我想在pdf中导出DataTable时调整列的列宽。我试过了,但没有改变:
$('#table').dataTable({
"dom": '<"top"f>tiB',
paging: false,
fixedHeader: {headerOffset: 45},
buttons: [
{
extend: 'pdfHtml5',
exportOptions: {
columns: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
},
customize : function(doc) {
doc.styles['td:nth-child(8)'] = {
width: '1000px',
'max-width': '1000px'
}
},
text: 'Export: PDF',
orientation: 'landscape',
pageSize: 'A3',
}]
});
包含了pdfmake.js,我也尝试了width: 1000
或"width: 1000"
等等。
答案 0 :(得分:1)
我的表中有八列,此代码对我来说很好:
$.extend( true, {}, buttonCommon, {
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'A0',
customize: function (doc) {
doc.defaultStyle.fontSize = 8; //2, 3, 4,etc
doc.styles.tableHeader.fontSize = 10; //2, 3, 4, etc
doc.content[1].table.widths = [ '2%', '14%', '14%', '14%',
'14%', '14%', '14%', '14%'];
}
});