使用Electron将HTML转换为PDF

时间:2019-04-23 08:17:31

标签: node.js reactjs electron

我正在将Electron / ReactJS / ExpressJS / LokiJS样板用于桌面应用程序。

实际上,问题是当我从HTML创建PDF时,它在Dev版本上工作正常,但是当我尝试在Production版本上工作时,它显示了一条错误消息。以下是错误。

  

{“被杀死”:false,“代码”:4294967295,“信号”:空,“ cmd”:“ C:\ Users \ ali \ AppData \ Local \ Programs \ electron-react-express-loki \ resources \ app.asar.unpacked \ node_modules \ phantom-html2pdf \ node_modules \ phantomjs-prebuilt \ lib \ phantom \ bin \ phantomjs.exe   C:\ Users \ ali \ AppData \ Local \ Programs \ electron-react-express-loki \ resources \ app.asar \ node_modules \ phantom-html2pdf \ lib \ phantom-script.js   C:\ Users \ ALI〜1 \ AppData \ Local \ Temp \ tmp-19008vknA3FL4O2vT.html   C:\ Users \ ALI〜1 \ AppData \ Local \ Temp \ tmp-19008gl2nRzKfvwuZ.pdf   nofile A4风景1cm假假500“}

我用于Node.js的相关代码

    var pdfNEW = require('phantom-html2pdf');

    app.post('/api/invoice', (req, res, next) => {
        let orgFileName = moment().unix() + ".pdf";
        let filename = "C:/SpaApp/Register/pdf/" + orgFileName;
        var pdfOptions = {
          html: '<!DOCTYPE html><html lang="en"><body><h1>Hello</h1><p>World</p></body></html>',
          paperSize: {
            format: 'A4',
            orientation: 'landscape', // portrait
            border: '1cm'
          }
        };

        pdfNEW.convert(pdfOptions, (err, result) => {
          if (!err) {
            result.toFile(filename, () => {
              res.status(200).json({
                message: 'done'
              })
            });
          } else {
            res.status(500).json({
              message: err
            })
          }
        });
      })

如果有任何可用的解决方案,那将是一个很大的帮助

0 个答案:

没有答案