在pdffiller上获取错误:生成pdftk

问题描述

我在项目中使用pdffiller

npm安装pdffiller

这是我的代码

return new Promise((resolve,reject) => {
          pdfFiller.fillFormWithFlatten(sourcePDF,distPath,formValues,false,function (err) {
              if (err) {
                return reject(err);
              }
              return resolve({
                url: distPath
              });
            }
          );
        });

我的pdf是可编辑的,并且具有复选框,输入框等。

该pdf文件保存在sourcePDF目录中

formValues对象填充的pdf

每次我尝试填充pdf时都会出现此错误

Error: spawn pdftk ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:267:19)
    at onErrorNT (internal/child_process.js:469:16)
    at processticksAndRejections (internal/process/task_queues.js:84:21) {
  errno: 'ENOENT',code: 'ENOENT',syscall: 'spawn pdftk',path: 'pdftk',spawnargs: [
    'public/uploads/test/0.pdf','fill_form','temp_data1601654837427pd8bn.fdf','output','public/uploads/providers/4939/test/9e6020c5-2369-45fd-b75b-250d7edb3ec5-populate.pdf'
  ],cmd: 'pdftk public/uploads/test/0.pdf fill_form temp_data1601654837427pd8bn.fdf output public/uploads/providers/4939/test/9e6020c5-2369-45fd-b75b-250d7edb3ec5-populate.pdf'
}

解决方法

AKX的坦克

它可以快速安装

sudo snap install pdftk

我的问题已解决