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)
任何帮助将不胜感激,因为现在变得非常令人沮丧!!
text示例中的键是对示例数据中的datakey的引用.当您使用该autoTableToHtml函数时,您的数据键将基于整数,因此您columnStyles应该像这样:
columnStyles: {
2: {
columnWidth: 'auto'
}
}
Run Code Online (Sandbox Code Playgroud)
在这个阶段没有很好地记录这一点.我在即将发布的版本3的文档中写了一篇关于它的部分.