Javascript 如何使用jsPDF合并两个PDF文件
我想知道如何使用jsPDF将两个(或多个)PDF文件合并成一个文件,然后使用用户浏览器的PDF查看器显示 我的要求是简化打印一组文档的过程,而不是一个接一个地打印,只需将所有文档合并并打印一个文件即可 我在Stack Overflow中研究了另一个问题,但这对我没有太大帮助,因为在本例中,他们是从HTML内容创建pdf,在本例中,我必须将一组pdf文件合并在一起。 我可以从url获取PDF文件,也可以从中获取原始内容(base64代码),所以我想知道是否有办法使用这个库来实现这一点。如果是这样的话,我只需要知道使用什么方法,或者可能是文档的链接(我也看过文档,但没有找到)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文档转换为数组缓冲区() 然后使用给定的解决方案
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;
}