Javascript 如何使用jsPDF合并两个PDF文件

Javascript 如何使用jsPDF合并两个PDF文件,javascript,jquery,pdf,merge,jspdf,Javascript,Jquery,Pdf,Merge,Jspdf,我想知道如何使用jsPDF将两个(或多个)PDF文件合并成一个文件,然后使用用户浏览器的PDF查看器显示 我的要求是简化打印一组文档的过程,而不是一个接一个地打印,只需将所有文档合并并打印一个文件即可 我在Stack Overflow中研究了另一个问题,但这对我没有太大帮助,因为在本例中,他们是从HTML内容创建pdf,在本例中,我必须将一组pdf文件合并在一起。 我可以从url获取PDF文件,也可以从中获取原始内容(base64代码),所以我想知道是否有办法使用这个库来实现这一点。如果是这样

我想知道如何使用jsPDF将两个(或多个)PDF文件合并成一个文件,然后使用用户浏览器的PDF查看器显示

我的要求是简化打印一组文档的过程,而不是一个接一个地打印,只需将所有文档合并并打印一个文件即可

我在Stack Overflow中研究了另一个问题,但这对我没有太大帮助,因为在本例中,他们是从HTML内容创建pdf,在本例中,我必须将一组pdf文件合并在一起。

我可以从url获取PDF文件,也可以从中获取原始内容(base64代码),所以我想知道是否有办法使用这个库来实现这一点。如果是这样的话,我只需要知道使用什么方法,或者可能是文档的链接(我也看过文档,但没有找到)


非常感谢您的回答,如有任何帮助,我们将不胜感激。问候

您可以将jsPDF文档转换为数组缓冲区()

然后使用给定的解决方案

const doc = new jsPDF('p', 'mm', 'a4');
...
const arrayBuffer = doc.output('arraybuffer');
async mergePdfs(pdfsToMerges: ArrayBuffer[]) {
  const mergedPdf = await PDFDocument.create();
  const actions = pdfsToMerges.map(async pdfBuffer => {
  const pdf = await PDFDocument.load(pdfBuffer);
  const copiedPages = await mergedPdf.copyPages(pdf, pdf.getPageIndices());
  copiedPages.forEach((page) => {
    // console.log('page', page.getWidth(), page.getHeight());
    // page.setWidth(210);
    mergedPdf.addPage(page);
    });
  });
  await Promise.all(actions);
  const mergedPdfFile = await mergedPdf.save();
  return mergedPdfFile;
}