由于这个程序需要输入图像--它不能输入pdf本身--我使用了像pdftoppm MY_PDF NAME_OF_IMAGE -png这样的命令来处理低质量的pdf,因此,为了处理带有扫描Tailor的pdf (为了移除拍摄pdf页的背景,或者分割pdf页面),我使用了一个命令来处理一个低质量的pdf,结果的图像比原始的pdf更差。

但是使用来自pdfimages的poppler-utils工具,其结果和原来的一样好。
如果使用了与-png不同的变量(或者没有使用变量,输出为ppm),则这仍然是正确的。
我认为从现在开始,pdfimages是一个更好的解决方案,但后来我注意到,对于许多其他pdf文件来说,这个命令根本不是很好,因为它给出了一些图像或文本片段,pdftoppm给出了预期的正常文本。
如果从pdf中提取出错误的图像,并在海豚中查看pdfimages:

正确的图像,如果提取从相同的pdf与pdftoppm观看海豚:

为什么会有这些差异?
发布于 2022-10-22 20:13:39
这种差异源于工具的用途。一旦您意识到PDF是一种灵活的文件格式,就会变得很明显。它可以包含文本、矢量图形和光栅图像(此列表并非详尽无遗)。您可能会认为它是“带有布局信息的zip”(总体简化)。
pdftoppm将“渲染”或“光栅化”整个PDF。由于嵌入光栅图像的像素很少与输出“画布”的像素对齐,所以所有的文本和图形都将成为一个栅格化的输出image.,插值的发生和质量的下降。这可以通过显著提高输出分辨率(选项-r)来抵消。当然,这意味着文件的大小也会增加。pdfimages将从PDF文件中提取光栅图像。文本或矢量图形是disregarded.,因为光栅图像是提取的,原来的质量被保留,但有关布局的信息丢失。如果您的输入PDF只包含一个光栅图像,而没有其他任何内容,则输出可能类似。
在你的例子中,复印机的扫描功能试图识别文本块来存储高质量的文本。文档的其余部分(例如,白色背景)以低质量存储,以节省存储空间。正如你所发现的,这可能对一个人有好处,也可能不起作用。
https://unix.stackexchange.com/questions/722061
复制相似问题