无法从上到下 select PDF

Cannot select PDF from top to bottom

我正在使用 pdftotext 从 pdf 中提取信息。当前使用 -raw 选项。我正在使用的 PDF 确实存在一些问题。如果我 select 从上到下的文本,它 select 将按以下方式显示。

PDF 内容:

一个

B

C

它select先是A,然后是C,然后是B。所以当我提取文本时,它以相同的方式呈现。有没有办法重新格式化 PDF,以便我可以 select 从上到下的内容?

注意:我知道如果我省略 "raw" 选项,布局将被保留,但当文档包含表格时它似乎有问题,所以 raw 对我来说效果更好。

是的,您可以重新格式化 PDF,使内容从上到下返回。这不是使用 Adob​​e Acrobat 或我知道的任何其他查看器可以轻松完成的事情,原因如下。

根据 pdftotext 的文档,-raw 选项定义为

Keep the text in content stream order. This is a hack which often "undoes" column formatting, etc. Use of raw mode is no longer recommended.

"content stream order" 是描述中的重要部分。

在 PDF 中,页面上的内容不必按照人们在呈现页面时阅读内容的顺序写入内容流(解释为显示页面的指令)。 PDF 的内部结构不关心顺序,它们旨在在各种平台上重现文档的相同可视化效果。由于 PDF 最重要的是可视化,编写 PDF 的应用程序或库往往不会以任何有意义的方式对内容流进行排序。

因此您可以对内容流中的指令进行重新排序,使它们按照人们阅读的顺序排列,这不是一项简单的任务,要手动完成并使用理解 PDF 的库来操作内容流将是这样做的一种方式。另一种方法是寻找一种更高级的工具来从 PDF 中提取文本(有许多工具将查看内容在页面上的位置,而不仅仅是它在内容流中出现的位置)。

我不知道有什么会根据内容自动出现在页面上的位置重新排列 PDF 中的内容流。