我一直在使用服务器端 Java 将 HTML + CSS 转换为 PDF,例如 Flying Saucer ( http://code.google.com/p/flying-saucer/ )
现在我需要看看随着 RaphaelJS 等客户端可视化 API 的增长而出现的替代方法,这些 API 也应该包含在 PDF 导出中。
理想情况下,我只需要一个打印友好的布局和 CSS(有点像 Google 地图),并且会有一些神奇的方式让 Javascript 调用可以静默地将窗口“打印”到 PDF 文件,而不是拥有单独的 PDF生成管道。
有没有这样的事情?
如果没有,您会推荐哪些其他方法?
例如
- 使用 node.js 或 Rhino 运行 Raphael 服务器端,使用 Batik 将 SVG 输出转换为图像,在服务器端渲染 PDF
- 同样的事情,但要从 Raphael 已经在客户端完成的工作中获取 SVG
- 在服务器上做一个无头浏览器,如 wkhtmltopdf 或 phantomjs,以捕获并执行生成的 HTML/JS 服务器端。
这些方法或其他建议中的任何一个是否成功?