0

这是 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);                             
                            },
                      });

请帮忙!

4

1 回答 1

0

如果我正确理解您的问题,您可以尝试按索引而不是键引用特定列。即columnWidth: {0: columnWidth: 'wrap'}

于 2017-05-29T11:56:34.673 回答