jspdf 库中的 fromhtml 方法问题

Issue with fromhtml method in jspdf lib

我需要将 html 转换为 pdf,我找到了 jspdf 库。但是我运行陷入了困境。如果 <p> 标签包含如下文本:text<br /><br />text 它不起作用。我在控制台中出现以下错误:

Uncaught TypeError: Cannot read property '1' of undefined
at Renderer.renderParagraph (from_html.js:967)
at Renderer.setBlockBoundary (from_html.js:1018)
at DrillForContent (from_html.js:529)
at DrillForContent (from_html.js:497)
at from_html.js:669
at done (from_html.js:539)
at loadImgs (from_html.js:569)
at process (from_html.js:667)
at Object.jsPDFAPI.fromHTML (from_html.js:1105)
at saveDocument (index.js:17)

在脚本导入中我有下一个模块:

HTML:

<div id="blank">
     <p>some text<br /><br />another text</p>   
</div>
<button onclick="saveDocument();">Save PDF</button>

JavaScript:

function saveDocument() {
    var pdf = new jsPDF();
    var content = $('#blank').html();
    pdf.fromHTML(content, 15, 15, {
        'width': 170
    });
    pdf.save('document.pdf');
}

我现在不知道如何解决?

您必须使用单独的 <p> 标签:

<p>some text</p><br /><br />
<p>another text</p>   

最终使用 https://www.npmjs.com/package/html2pdf-fix-jspdf,它通常是 jspdf 的包装器。

在我的案例中,单独的 p 标签是不可能的,我为此尝试了所有可能的解决方案。就像使用

和 \r\n 但在我的情况下没有任何作用。

分享可能有用