Java从无效的HTML创建PDF或图像

时间:2012-06-04 11:45:08

标签: c# java html validation pdf

我想从“无效” HTML PDF (或任何图片格式[ png,jpg,bmp ...]) >使用 Java 的文件。我用Google搜索并找到了一个工具:iText,以及一些使用iText通过Java从HTML创建PDF的教程。

在本教程(X)HTML to PDF with Java 中,它适用于有效的HTML,我有一个像this这样的PDF文件。但如果我试图从我的HTML创建PDF我有一些错误。

首先,我的HTML格式不正确,遗憾的是无法更改。我将其上传到here并找到了W3C的验证工具28 errors

我的选择是:

  • 首先清理并验证我的HTML并尽快创建PDF。
  • 找到另一个工具(适用于我的问题)。
  • 您的建议(使用Java)。
  • 最后选项;使用另一个平台( .net,Php,Python 等)和 使用我的应用程序中的Webservices。

请帮我解决这个问题。提前谢谢

3 个答案:

答案 0 :(得分:4)

您可以使用像http://jtidy.sourceforge.net/这样的工具为您修复HTML并针对jTidy的输出运行iText ...

答案 1 :(得分:2)

您可以使用支持破解HTML的HTML解析器,例如jsoup

与jtidy一样,它可以自动创建有效的HTML,但它也允许您操作HTML DOM,因此您可以尝试以您希望的方式明确地解决最大的问题。

答案 2 :(得分:2)

试试wkhtmltopdf。这使用Headless浏览器(webkit)首先渲染html,然后生成PDF。我在我的一个java项目中使用它并且运行良好。

它提供了一些灵活的命令行选项,Here是选项列表及其用法的链接。它适用于那些形状不好的htmls。