【问题标题】:Text size changes when using html-pdf local vs online使用 html-pdf 本地与在线时文本大小发生变化
【发布时间】:2021-04-11 14:02:04
【问题描述】:

我实际上是在使用 node js 和html-pdf lib 在服务器上生成一个 pdf,它作为 blob 返回给客户端。当我在本地机器上执行此操作时,一切都很好,但是当我将其上传到服务器并进行测试时。生产时文本大小会增加。

我创建了一个将对象作为参数的函数:

async function generatePDF(object) {
  let htmlContent = `
  <!DOCTYPE html>
<html>
  <head>
  <meta charset="UTF-8">
    <style>
      body,
      html {
        font-family: arial, sans-serif;
        color: rgb(46, 46, 46);
      }
    </style>
  </head>
  <body>
  <br />
  Date: ${object.todayDate}

  <div style="margin-top: 60px">
    <h3 style="border-top: 1px solid black">Dr. ${object.name} ${object.firstname}</h3>
  </div>
</html>
`;

下面是从创建的 HTML 文件生成 PDF 的代码:

    let sideMargin = "1.5cm";
    var options = {
      format: "A5",
      border: {
        top: "1.5cm", // default is 0, units: mm, cm, in, px
        right: sideMargin,
        bottom: "3.0cm",
        left: sideMargin,
      },
    };
    console.log(options);
    var path = require("path");
    var appDir = path.dirname(require.main.filename);

    let date = Date.now();
    let newPDF = `${appDir}/files/${date}new.pdf`;
    let newHTML = `${appDir}/files/${date}new.html`;

    htmlData["fileName"] = newHTML;
    console.log(`Generating new PDF '${newPDF}`);

    await generatePDF(htmlData);
    var html = fs.readFileSync(`${newHTML}`, "utf8");
    pdf.create(html, options).toFile(`${newPDF}`, function (err, res) {
      if (err) return console.log(err);
      console.log(res);
      r.sendFile(`${newPDF}`, (error) => {
        if (!error) {
          fs.unlinkSync(`${newPDF}`);
          fs.unlinkSync(`${newHTML}`);
        }
      });
    });

问题是在我的机器上本地一切都很好,但是在线 PDF 的文本大小要大得多,而不是返回一页,而是返回两页(当然是我在此处设置的内容) HTML 不是我想要的结果,只是一个例子)。

【问题讨论】:

    标签: node.js express node-html-pdf


    【解决方案1】:

    嘿,我发现了问题所在, 这个问题还没有解决方案。解决方法是添加

    html {
      zoom: 0.55;
    }
    

    到 CSS 文件/代码 实际上有一个open issue

    【讨论】:

      猜你喜欢
      • 2013-03-24
      • 1970-01-01
      • 1970-01-01
      • 2013-06-14
      • 2018-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-26
      相关资源
      最近更新 更多