PDF生成器wkhtmltopdf(版本0.12.5)未使用javascript显示任何结果。

我正在尝试在Mac上使用PDF生成器wkhtmltopdf。它呈现的是pdf静态内容,而不是简单的javascript代码(如下面的示例所示)。

在test.html中使用以下html:

<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
        <script>
                let d = new Date();
                document.body.innerHTML = "<h1>Today's date is " + d + "</h1>"
        </script>
        <p>testar</p>
  </body>
</html>


并在终端中对其进行测试:

$ wkhtmltopdf --enable-javascript --debug-javascript public/test.html test4.pdf

在终端输出:

Loading pages (1/6)

Warning: file:///Users/anders/vapor/projectDovi/public/test.html:7 SyntaxError: Parse error

Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done


我希望输出显示今天的日期,但是在生成的PDF中仅显示静态文本“ testar”。

如上所示,我得到的错误是


  警告:7 SyntaxError:分析错误

最佳答案

wkhtmltopdf 0.12.5内部使用旧的Webkit浏览器,并且不支持let,您必须在基本示例中使用var,然后它才能工作。如果您希望使用wkhtmltopdf 0.12.5,则您的JavaScript必须与ES5兼容。

请注意,Webkit的渲染也可能与Chromium不同。

09-30 15:10
查看更多