我正在使用pdftotext从pdf中提取信息。目前使用-raw选项。我与我正在使用的PDF有一些问题。如果我从上到下选择文本,则按以下方式选择。
PDF内容:
A
乙
C
它选择A然后选择C然后选择B.因此,当我提取文本时,它以相同的方式呈现。有没有办法重新格式化PDF,以便我可以从上到下选择内容?
注意:我知道如果省略“raw”选项,布局将被保留,但是当文档包含表格时,它似乎有些错误,所以原始版本对我来说效果更好。
答案 0 :(得分:1)
是的,您可以重新格式化PDF,以便从上到下返回内容。这不是使用Adobe Acrobat或我所知道的任何其他查看器可以轻松完成的事情,这就是原因。
从pdftotext的文档中,-raw选项定义为
将文字保留在内容流顺序中。这是一个经常“撤消”列格式化的黑客攻击等。不再推荐使用原始模式。
“内容流顺序”是描述中的重要部分。
在PDF中,页面上的内容不必按照人类在呈现页面时读取内容的顺序写入内容流(解释为显示页面的指令)。 PDF的内部不关心排序,它们被设计为在各种平台上重现文档的相同可视化。由于对PDF重要的是可视化,因此编写PDF的应用程序或库往往不会以任何有意义的方式对内容流进行排序。
因此,您可以对内容流中的指令进行重新排序,使它们按照人类读取它们的顺序排列,手动操作并使用理解PDF来操纵内容流的库将不是一件容易的事。这样做的一种方式。另一种方法是寻找一种更高级的工具来用于从PDF中提取文本(有许多工具可以查看内容在页面上的位置,而不仅仅是它在内容流中的位置)。 / p>
我不知道会根据内容在页面上自动显示的位置重新排序PDF中的内容流。