【问题标题】:Combine PDF files in a loop ( Hummus-Recipe )循环合并 PDF 文件 ( Hummus-Recipe )
【发布时间】:2020-02-23 22:33:26
【问题描述】:

我使用 Hummus-Recipe 库,它工作正常,但我想创建一个函数来接受文件数组以将所有文件附加到一个。

这是我的工作代码:

const filesRoot = './uploads';
router.route('/')
.get( async (request, response) => {
        const src =  filesRoot + '/one.pdf';
        const appendedFile = filesRoot + '/two.pdf';
        const appendedFile2 = filesRoot + '/three.pdf';
        const output = filesRoot + '/new.pdf';
        const recipe = new HummusRecipe(src, output);
        recipe
            .appendPage(appendedFile)
            .appendPage(appendedFile2)
            .endPDF();
    });

如何获取此代码并使其接受数组??

类似的东西:

let combinePdfFiles = (array) => {
    for (let i = 0; i < array.length; i++) {
    }

};

谢谢。

【问题讨论】:

    标签: node.js pdf hummus.js


    【解决方案1】:

    您可以使用 easy-pdf-merge 包来合并一些 pdf 文件的数组。

    用法:

    const merge = require('easy-pdf-merge');
    
    merge(source_files,dest_file_path,function(err){
      if(err) {
        return console.log(err)
      }
      console.log('Success')
    });
    

    例子:

    merge(['File One.pdf', 'File Two.pdf'], 'File Ouput.pdf', function(err){
      if(err) {
        return console.log(err)
      }
      console.log('Successfully merged!')
    });
    

    【讨论】:

    • 嘿,我尝试在我的 MacBook 上使用这个库,我得到了我需要安装 java 的错误? ://
    • @WebDeveloper 不需要安装java。它只是一个 javascript 库。
    • 我收到此错误:要使用“java”命令行工具,您需要安装 JDK
    • @WebDeveloper 你使用npm i easy-pdf-merge 命令了吗?
    • 是的在我的 package.json 中:"dependencies": { "easy-pdf-merge": "^0.2.2",
    【解决方案2】:

    我创建了这个函数,它可以工作。

    const combinePdfFiles = async (files, companyID, flowID) => {
        const filesRoot = `./uploads/${companyID}/${flowID}`;
          try {
            const originalFile = `${filesRoot}/${files[0]}`;
            const output = `${filesRoot}/combined.pdf`;
            const recipe = new HummusRecipe(originalFile, output);
            for (let i = 1; i < files.length; i++) {
                recipe
                .appendPage(`${filesRoot}/${files[i]}`);
            }
            recipe.endPDF();
          } catch (error) {
              throw error;
          }
    
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-15
      • 1970-01-01
      • 1970-01-01
      • 2017-04-28
      • 2021-12-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多