我一直在互联网上搜索如何使用Java将HTML页面转换为PDF文件。我发现了很多指针,简而言之,它们不起作用或者太难实现。我还下载了一个商业产品,pdf4ml; API是我很乐意使用的,除了当我在维基百科上抓取一个简单的页面时,我得到一个内存不足错误(将Xmx设置为1024 M)。在某些方法中,他们建议转换HTML - > XHTML - > FO - > PDF。但是,我得到了很多XHTML到FO XLS文件的例外;并且阅读文档,这不是我现在有足够时间理解的东西。
这是我的问题/疑虑。 1.那里有另一个有凝聚力的API,可以轻松地将HTML转换为PDF(商业与否)? 2.有没有办法可以简单地捕获HTML页面并将其存储为单个文件。这种方法类似于使用Internet Explorer将网页保存为Web存档的方式(单个文件,MHT格式)?
任何帮助表示赞赏。 (顺便说一句,我知道这个问题已被反复询问,但除了问题的原始精神之外,我还向其他方式开放)。感谢。
答案 0 :(得分:5)
尝试使用WebKit的wkhtmltopdf。另一个选项(我目前正在使用它)是使用OpenOffice(通过宏远程控制)。
答案 1 :(得分:1)
答案 2 :(得分:0)
使用开源工具我的2美分:
您可以使用Capture screenshots with Selenium或WebDriver将html页面的屏幕截图保存在Java代码的图像文件中。一旦你有图像文件,你可以convert it to pdf again from your Java code。
修改强> 看来你可以使用itext Html to Pdf
一步完成所有这些操作答案 3 :(得分:0)
我不确定但你可以尝试
1)cobra html渲染引擎http://lobobrowser.org/cobra.jsp
2)htmleditorkit - jdk的一部分
3)JWebPane
使用渲染工具包来解析和渲染html。渲染出来的是摆动组件。迭代文件可以使用Swing组件生成pdf文件输出
答案 4 :(得分:0)
您可以尝试Pdfcrowd。它是一个易于使用的商业在线API,有许多选项并支持Java。
它可以从网页或原始HTML代码创建PDF。