2012-08-02 67 views
1

有没有人使用wicked_pdf和wkhtmltopdf从轨道生成PDF文件?wicked_pdf和wkhtmltopdf从包含大量Javascript内容的文件生成PDF文件?

wkhtmltopdf(http://code.google.com/p/wkhtmltopdf/)是wicked_pdf gem(https://github.com/mileszs/wicked_pdf)本质上包装的C++可执行文件。它适用于表格和报告的基本pdf生成。

我们正在寻找打印一些有很多javascript内容的页面。由于处理全部在服务器端完成,显然没有浏览器来解释JavaScript。

我一直在环顾四周,可以看到wkhtmltopdf支持一些Javascript,但我也看到很多人遇到了使用它进行复杂的JavaScript渲染的问题。

回答

3

其实这里有一个浏览器引擎。 wkhtmltopdf中的WK代表webkit,它是用于呈现HTML和javascript的浏览器引擎 - Chrome也使用该引擎。

你有一个不起作用的具体事情吗?我使用JavaScript,并且我看到一些相当复杂的JavaScript也被使用,例如图表的生成,它们似乎已经足够好了。经常与wkhtmltopdf一起使用的页眉和页脚也严重依赖于javascipt。

虽然我没有使用过红宝石。

+0

感谢您的注意。我前段时间解决了这个问题(这篇文章是4个月前)。我知道wkhtmltopdf会做一些JavaScript处理 - 问题是我有一个页面,它有很多* javascript。 wkhtmltopdf无法处理它,尽管它的确适用于非常简单的东西。谢谢你的提示。 – 2012-12-20 15:19:35

+2

很好,你知道了!你有没有结束使用其他工具?我接下来要建议检查命令行参数,比如'--debug-javascript --javascript-delay --no-stop-slow-scripts'但是没有任何意义:) – Nenotlep 2012-12-20 15:22:51

+0

页面上的javascript非常复杂 - 例如,其中一个项目正在使Highcharts图形包工作。 Highcharts是一个基于JavaScript的图形包,可以呈现图表。 wkhtmltopdf无法处理任何复杂的事情。我们最终简化了页面并取出了大部分的javascript。 – 2012-12-20 16:24:24