在Java中将PDF转换为Word

是否可以在Java中将PDF转换为Word? 我不是在谈论解析PDF文档,然后再自定义再渲染到Word。 我想要一个可以直接转换它的Java库。

阅读PDF文档是一个非常复杂的过程,没有很好的免费库可以从Java中提取PDF文档中的非文本信息。 更糟糕的是,PDF文档有很多难以重建的布局信息,例如Word文档中的表格变成了一些行和PDF中的一堆文本。

从任意PDF重新创建语义信息几乎是不可能的。 如果你有相同的工具写它你有更多的机会,但即使如此,有很多不确定性。 您在(文本)PDF中唯一可以确定的是页面上每个字符的位置。 (请注意,某些PDF包含发生文本信息且必须依赖OCR的位图)。

计算机科学系中有几个小组,其他人正在花费非常大的努力来尝试获取语义信息。 我们与Penn State(领导者之一)合作,他们正致力于提取表格。 在好的情况下,50%的坏人得到90%。

所以答案是正式的,你不能,但你可能偶尔会幸运。 (我们为化学做了很多这方面的工作,如果我们定期获得50%的话,我们就算是幸运的。)

  1. 您可以尝试使用iText库。 阅读PDF,然后将其写为RTF。
    但这并不是那么简单,因为您必须保留PDF具有的不同样式。

  2. 您可以使用一些外部工具。
    安装一些免费的程序,如“Free PDF to Doc”,并从你的java程序执行它。
    这在大多数情况下工作正常。

  3. 使用您的Java代码中的Acrobat Pro SDK。

祝你好运