这是 github 中提出的问题的延续,将更宽的表格放入 PDF #261。
我正在重用相同的方法(doc.autoTable)从不同的 HTML 输入中创建 PDF。因此,如果我将第 0 列的列样式定义为 columnWidth: 'wrap',那么调用此特定方法的所有 HTML 表都将应用相同的样式。
我不确定我是否可以遵循长文本示例,因为列名和表格正文都直接来自 HTML 页面。而在长文本示例中,我看到列名被声明/定义,如下所示
var columnsLong = getColumns().concat([
{title: "Title with\nlinebreak", dataKey: "text2"},
{title: "Long text column", dataKey: "text"},
]);
现在有2个问题。1. 我不想为所有列应用“WRAP”,因为表格被切割了。2. 需要通过提及来自 HTML/GSP 页面的列名来单独为某些列应用“换行”。
这是我的代码
var res = doc.autoTableHtmlToJson($(".printReportsCaveat")[0]);
doc.autoTable(res.columns, res.data, {
columnStyles : {'Plant':{columnWidth: 'wrap'},
'Mine':{columnWidth: 'wrap'},
0:{textColor: [0,105,170]}
},
margin: {top: 55, bottom : 110},
headerStyles: {
overflow: 'linebreak',
// columnWidth: 'auto',
halign: 'center'
},
styles : {
overflow: 'linebreak',
halign: 'center',
fontSize: 8
},
createdCell: function(cell, data) {
var group = $('#groupByValue').val();
addColorToCell(group, level3Flag, level2Flag, data, cell);
},
addPageContent : function(data) {
printHeadNFoot(doc, userDtl, data);
},
drawCell: function(cell, data) {
designCell(data,doc);
},
});
请帮忙!