jsPDF自动表宽列内容不破

Wig*_*ggy 6 pdf export jspdf jspdf-autotable

我正在使用jsPDF自动表从表中获取html内容并在jsPDF文档中显示以进行导出,但无论我尝试什么,似乎无法按照我的意愿获得列宽的打破/包装.

理想情况下,表和列会自动计算其宽度,长列内容包含多行,类似于此处的"long:overflow linebreak"示例:https://simonbengtsson.github.io/jsPDF-AutoTable/#长

虽然我使用的是示例中的相同代码,但它不会以相同的方式生成.

exportGraph = function () {
    var doc = new jsPDF();
    var elem = document.getElementById("basic-table");
    var res = doc.autoTableHtmlToJson(elem);

    doc.autoTable(res.columns, res.data, {
        startY: 15,
        margin: { horizontal: 0 },
        bodyStyles: { valign: 'top' },
        styles: { overflow: 'linebreak', columnWidth: 'wrap' },
        columnStyles: { text: { columnWidth: 'auto' } }
    });

    doc.save('test.pdf');
};
Run Code Online (Sandbox Code Playgroud)

jsfiddle的例子

任何帮助将不胜感激,因为现在变得非常令人沮丧!!

Sim*_*son 8

text示例中的键是对示例数据中的datakey的引用.当您使用该autoTableToHtml函数时,您的数据键将基于整数,因此您columnStyles应该像这样:

columnStyles: {
  2: {
    columnWidth: 'auto'
  }
}
Run Code Online (Sandbox Code Playgroud)

在这个阶段没有很好地记录这一点.我在即将发布的版本3的文档中写了一篇关于它的部分.