wkhtmltopdf.exe --no-stop-slow-scripts无法正常工作?

时间:2016-04-14 15:55:52

标签: javascript jquery html pdf wkhtmltopdf

我们正在使用wkhtmltopdf.exe(0.10.0 rc2)将包含大量javascript的非常大的HTML页面转换为PDF文件。在执行所有javascript之前,我们遇到了打印PDF的问题,所以我们决定在执行wkhtmltopdf时使用以下参数(等等):

wkhtmltopdf.exe --no-stop-slow-scripts --javascript-delay 40000 <url> <pdf>

但是,输出仍然会向我们发出警告,表示缓慢的脚本已停止。当我们检查PDF时,应该被javascript隐藏的某些元素仍然可见(所以我认为javascript无法及时执行)。当我检查HMTL页面时,一切看起来都正常,并且控制台中没有显示javascript错误。我尝试了以上两个参数的所有可能组合,没有任何结果。

>wkhtmltopdf.exe --no-stop-slow-scripts --javascript-delay 40000 
--print-media-type --no-outline --title "My title" --footer-center "My footer"
--footer-font-name "Verdana" --footer-font-size 4 --no-footer-line 
--cookie MyCookie MyCookieKey=MyCookieValue 
"http://..." "C:\Users\...\Documents\TestPDF.pdf"

Loading pages (1/6)
Warning: A slow script was stopped      <<< Why does it still show this warning?
Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

那么为什么wkhtmltopdf会忽略这些参数呢? 它与wkhtmltopdf的版本有什么关系吗?或者这可能是由于在这些HTML页面中使用jQuery引起的?

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

此问题的解决方案是更新到最新版本(0.12.3.2)。使用此版本,我们甚至不再需要--javascript-delay--no-stop-slow-scripts ...