将现有的 PDF 附加到 Jspdf

Leo*_*chi 5 pdf jspdf

我正在使用 jspdf 库来创建一个 pdf 并且它的效果很好。我现在正在尝试将另一个现有的 pdf 附加到该 pdf。当我的用户单击下载按钮时,它会触发两个单独的下载。我在想解决办法可能是创建两个图像并将它们添加到我用 Jspdf 创建的 pdf 中。有没有人将现有的 pdf 附加到使用 jspdf 生成的 pdf 中?

$(document).ready(function () {
    var doc = new jsPDF('p', 'pt', 'letter');
    var imgData = 'cats.jpg'
  var specialElementHandlers = {
        '#content': function (element, renderer) {
            return true;
        }
    };
    $('#cmd').click(function () {
        doc.addImage(imgData, 'JPEG', 0, 250, 615, 200);
        doc.fromHTML($('#content').get(0), 0, 0, {

            'elementHandlers': specialElementHandlers
        });

        doc.save('TemporaryIdCard.pdf');
    });


});
Run Code Online (Sandbox Code Playgroud)

Leo*_*chi 2

我最终从这里破解了答案。对此并不兴奋,但它确实有效。我根据尝试附加的 PDF 内容创建了图像,然后将每个图像作为页面添加到我的文档中

var doc = new jsPDF('p', 'pt', 'letter');
var imgData = 'cats.jpeg';
var imgData2 = 'dogs.jpeg';
var imgData3 = 'kittens.jpeg';    
var specialElementHandlers = {
        '#content': function (element, renderer) {
            return true;
        }
    };
    var pageHeight = doc.internal.pageSize.height;
    var y = 800;
    var x = 800;
    $('#cmd').click(function () {
        doc.addImage(imgData, 'JPEG', 0, 250, 615, 200);
        doc.fromHTML($('#content').get(0), 0, 0, {
            'elementHandlers': specialElementHandlers
        });
        if (y >= pageHeight) {
            doc.addPage();
            doc.addImage(imgData3, 'JPEG', 45, 45, 500, 550);
            y = 0;
        }
        if (x >= pageHeight) {
            doc.addPage();
            doc.addImage(imgData2, 'JPEG', 50, 70, 500, 500);
            x = 0;
        }
        doc.save('TemporaryIdCard.pdf');
    });
Run Code Online (Sandbox Code Playgroud)

  • 但这不是你的问题的解决方案!它与将现有 PDF 附加到 JsPDF 无关。如果您愿意,请参阅**[我的答案](/sf/answers/3639624761/)**。 (5认同)
  • @巴拉塔·达福克? (3认同)