这项任务并不容易,因为我需要在点击按钮后创建页面的PDF版本。它具有复杂的dom结构,许多元素绝对/相对定位,并且数据是动态加载的。我考虑过使用Phantom.js服务器执行此任务,因为它可以生成PDF,但这会带来一些问题;
我还想过在客户端生成它,但由于网站的复杂性,我可能需要很多天才能正确表示页面(因为所有的定位值都需要重新计算到pts),并且它必须是一个通用的解决方案。
任何其他想法如何解决这个问题?
答案 0 :(得分:2)
我已经研究了几种实现服务器端PDF生成的工具。
有一个名为abcPDF(.net)来自我试图使用的Web SuperGoo,但我一直有问题,它没有工作。
还有另外一个似乎更好的称为iText,可用于.net和Java版本。根据您使用的版本,可以使用AGPL,LGPL和商业许可证。
我希望我能以不同的方式告诉您,但我不知道有什么方法可以轻松地从HTML转换为PDF。这些库中的每一个都有一个API,您必须编写该API以描述文档的外观。
答案 1 :(得分:1)
使用PDF打印机怎么样?根据您的系统,可能有内置的PDF打印机,或者如果使用Windows,您可以查看PDFCreator
答案 2 :(得分:1)
使用Ajax {{1}将整个DOM发送到服务器,将其作为PDF(使用phantomjs)转发,在JSON响应中发回服务器URL(和nonce)怎么样?然后,您可以创建下载链接或自动启动下载。那会有用吗?