jsPDF auto table 宽栏内容不中断
jsPDF auto table wide column content not breaking
我正在使用 jsPDF Auto Table 从 table 中抓取 html 内容并在 jsPDF 文档中显示以供导出,但无论我尝试什么,似乎都无法获取列宽按我的意愿换行。
理想情况下希望 table 和列自动计算它们的宽度,长列内容跨越多行,类似于此处的 "long: overflow linebreak" 示例:https://simonbengtsson.github.io/jsPDF-AutoTable/#long
虽然我使用的是示例中的相同代码,但它的生成方式不同。
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');
};
任何帮助将不胜感激,因为现在这真的很令人沮丧!!
示例中的text
键是对示例数据中datakey的引用。当您使用 autoTableToHtml
函数时,您的数据键将基于整数,因此您的 columnStyles
应该像这样:
columnStyles: {
2: {
columnWidth: 'auto'
}
}
columnWidth 在较新的版本中已弃用。它被重命名为 cellWidth.
columnStyles: {
2: {
cellWidth: 'auto'
}
}
columnWidth 在较新版本中已弃用。它被重命名为 cellWidth。
columnStyles: {
2: {
cellWidth: 'auto'
}
}
错误:未定义自动
我正在使用 jsPDF Auto Table 从 table 中抓取 html 内容并在 jsPDF 文档中显示以供导出,但无论我尝试什么,似乎都无法获取列宽按我的意愿换行。
理想情况下希望 table 和列自动计算它们的宽度,长列内容跨越多行,类似于此处的 "long: overflow linebreak" 示例:https://simonbengtsson.github.io/jsPDF-AutoTable/#long
虽然我使用的是示例中的相同代码,但它的生成方式不同。
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');
};
任何帮助将不胜感激,因为现在这真的很令人沮丧!!
示例中的text
键是对示例数据中datakey的引用。当您使用 autoTableToHtml
函数时,您的数据键将基于整数,因此您的 columnStyles
应该像这样:
columnStyles: {
2: {
columnWidth: 'auto'
}
}
columnWidth 在较新的版本中已弃用。它被重命名为 cellWidth.
columnStyles: {
2: {
cellWidth: 'auto'
}
}
columnWidth 在较新版本中已弃用。它被重命名为 cellWidth。
columnStyles: {
2: {
cellWidth: 'auto'
}
}
错误:未定义自动