从PDF提取文本的最佳方法之一是TET,即文本提取工具包。TET是PDFlib.com产品家族的一部分。
PDFlib.com是Thomas Merz的公司(“ PostScript和PDF Bible”的作者)。
TET的第一个化身是图书馆。那可能可以做您想做的所有事情,包括在页面上每个文本元素的位置信息。哦,它也可以提取图像。它重组+合并成碎片的图像。
pdflib.com还提供了该技术的另一种形式,即Acrobat的TET插件。显然,您还需要Acrobat来利用它。
第三个体现是PDFlib TET iFilter。这是用于用户工作站的独立工具。两者都是免费的(例如在啤酒中),可用于私人,非商业目的。
最后,TET还带有命令行界面。
TET非常强大。比Adobe自己的文本提取更好。它为我提取了其他工具(包括Adobe的工具)仅吐出垃圾的文本。
几个月前,我测试了他们的桌面独立工具,他们在网页上所说的是正确的。它有一个非常好的命令行。我对某些“有问题的” PDF测试文件的处理感到非常满意。
对于所有复杂且具有挑战性的PDF文本提取要求,我都建议使用此工具。
TET真是太棒了。它检测表。在表内部,它标识跨多个列的单元格。它分别标识表行和每个表单元格的内容。它可以很好地处理连字符:它删除连字符并恢复完整的单词。它支持非ASCII语言(包括CJK,阿拉伯语和希伯来语)。遇到连字时,它会还原原始字符...
试试看。
翻阅(很难找到的)PDFBox文档后,我发现了这个小宝石。
显然其中一个示例准确显示了如何完成您所要求的一切。基本上,您可以继承PdfTextStripper
并覆盖该processTextPosition
方法。在那里,您查询所需TextPosition
的任何信息。
为了将来参考,您可以在这里找到javaDoc:http ://pdfbox.apache.org/apidocs/index.html
编辑2018-04-02:原始链接已死,但可以在SVN存储库中找到示例。
归档时间: |
|
查看次数: |
12631 次 |
最近记录: |