gpt4 book ai didi

multipage - 带有 HTML 渲染器的 jsPDF 多页 PDF

转载 作者:行者123 更新时间:2023-12-03 07:53:12 24 4
gpt4 key购买 nike

我在我的网站中使用 jsPDF 来生成 PDF。但是现在我有多个 DIV 可以打印在一个 PDF 中。这可能需要 2 到 3 页。

例如:

<div id="part1">
content
</div>

<div id="part2">
content
</div>

<div id="part2">
content
</div>

我的JS代码
  • 这有效,但不像我预期的那样,它添加了一部分内容(不能包含在多个页面中)。
  • 它会删除 br、h1 等 html 标签。

  •     function formtoPDF() {
    jsPDF.API.mymethod = function() {
    // 'this' will be ref to internal API object. see jsPDF source
    // , so you can refer to built-in methods like so:
    // this.line(....)
    // this.text(....)
    };
    var doc = new jsPDF();
    doc.mymethod();
    var pdfPart1 = jQuery('#genPDFpart1');
    var pdfPart2 = jQuery(".ltinerary");
    var pdfPart3 = jQuery("#domElementHTML");
    var specialElementHandlers = {
    '#loadVar': function(element, renderer) {
    return true;
    }
    };
    doc.fromHTML(pdfPart1.html() + pdfPart3.html() + pdfPart3.html(), 15, 15, {
    'width': 170,
    'elementHandlers': specialElementHandlers
    });
    doc.output('save', 'Download.pdf');
    }

    我可以为此提供解决方案吗?在此先感谢 friend 。

    最佳答案

    我有同样的工作问题。在 MrRio github 中搜索我发现了这个:https://github.com/MrRio/jsPDF/issues/101

    基本上,您必须在添加新内容之前始终检查实际页面大小

    doc = new jsPdf();
    ...
    pageHeight= doc.internal.pageSize.height;

    // Before adding new content
    y = 500 // Height position of new content
    if (y >= pageHeight)
    {
    doc.addPage();
    y = 0 // Restart height position
    }
    doc.text(x, y, "value");

    关于multipage - 带有 HTML 渲染器的 jsPDF 多页 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19272933/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com