Я пытаюсь настроить экспорт в PDF с помощью DataTables (который использует pdfmake). Все мои пользовательские стили работают, кроме dontBreakRows
, это, похоже, не имеет никакого значения, поэтому содержимое строк таблицы разбивается на разрывы страниц вместо того, чтобы держать их вместе на следующей странице, когда они не помещаются в предыдущую, что это то, что я ожидал.
Моя версия pdfmake - 0.1.27 (последняя по дате), DataTables 1.10.12, Buttons 1.2.1
Это мой код:
(...)
$.extend( true, {}, buttonCommon, {
'extend': 'pdf',
'text': 'PDF A4',
'orientation': 'landscape',
'pageSize': 'A4',
'message': 'Date '+todays,
'customize': function (doc) {
doc.content.splice(1, 0, {
margin: \{0, -32, 0, 8\},
alignment: 'right',
image: 'data:image/png;base64,(...)'
});
//These styles are working:
doc.defaultStyle.fontSize = 10;
doc.styles.title.fontSize = 12;
doc.styles.tableHeader.fontSize = 11;
doc.styles.tableFooter.fontSize = 11;
doc.styles.tableHeader.alignment = 'left';
doc.styles.title.bold = true;
doc.styles.tableHeader.bold = true;
doc.styles.tableHeader.color = '#ffffff';
doc.styles.tableHeader.fillColor = '#666666';
doc.styles.tableBodyOdd.fillColor = '#ffffff';
doc.styles.tableBodyEven.fillColor = '#e9e9e9';
doc.styles.tableHeader.noWrap = true;
//It doesn't work:
doc.styles.tableBodyOdd.dontBreakRows = true;
doc.styles.tableBodyEven.dontBreakRows = true;
doc.styles.tableBodyOdd.pageBreak = 'before';
doc.styles.tableBodyEven.pageBreak = 'before';
//It doesn't work neither:
doc.defaultStyle =
{
dontBreakRows: true
}
}
}),
(...)
Что я делаю неправильно? Спасибо!