包含的 PDF 图像包含不可见但可选择的文本

包含的 PDF 图像包含不可见但可选择的文本

我目前在尝试将 PDF 导入为图形时遇到了一些问题。PDF 旁边有一些原始文本,首先被裁剪以删除文本,然后使用 导入\includegraphics

enter image description here

但如图所示,原文仍然保留,在高亮显示时(在 PDF 阅读器中查看时)可以“看到”。事实上,通过将文本复制并粘贴到 word 文件中,可以再次查看原文。

有人知道是什么原因造成的,也许有解决办法吗?(除了将 PDF 转换为图像)

答案1

可能发生了什么

您导入的 PDF 很可能是使用完全的内容——但部分内容只是通过应用不同的“剪裁框' (小于“媒体盒”您可以将原始 PDF 的原始版本添加到导入中。只需操作 PDF 代码的一小部分即可实现此目的。

通常如何发生

这通常发生在您使用 macOS 时'预览'应用程序“裁剪”页面的部分内容。用户经常会被愚弄:他们认为他们已经删除了现在不可见的所有内容,并且在向客户发送此类页面“摘录”时保护了他们更广泛的公司机密。然而,只需在文本编辑器中更改两个数字,即可让所有页面内容再次可见!

如何更好地理解发生的事情

为了理解这种“裁剪”的工作原理,想象一下一张白纸覆盖了一页内容。现在在那张纸上剪出一个小窗口,让你只能看到“裁剪”的区域。其余的内容并没有消失,仍然在那里;只是目前不可见,只需移除带有小窗口的白纸即可再次显示。由于 PDF 查看器不会真正显示可见部分周围的白色区域,因此你的大脑很容易被误导,以为剩余的内容已经永远消失了。真的作物您必须从原始纸张上剪掉所有不需要的内容并将其烧毁......

如何解决问题

为了使内容超出此类裁剪区域真的离开(并永久从页面中删除/Contents流,您必须再次重新处理初始裁剪的页面。像这样通过 Ghostscript 运行它将实现此结果:

gs -sDEVICE=pdfwrite -o really-cropped.pdf seemingly-cropped.pdf

如何检查解决方案是否有效

为了验证,你应该运行这两个pdfinfo命令:

 pdfinfo -box seemingly-cropped.pdf
 pdfinfo -box really-cropped.pdf

只有具有相同值的 PDF 文件媒体盒以及剪裁框可以保证不是包含 PDF 查看器显示区域之外的额外(隐藏)内容。这些内容可以安全地导入到文档中。所有 PDF 文件,其大小都较小剪裁框-比媒体盒-es可能有额外的隐形内容随身携带......

答案2

我最近也遇到了类似的情况,幸运的是,我成功解决了这个问题。在我的例子中,我需要从 PDF 中删除页眉和页脚才能自动提取表格 - 搜索‘tabula-py’Python 包。我们的想法是将所有 PDF 页面合并为一个页面 - 搜索‘pdfjam --nup’命令——修复格式错误的表格。

为了裁剪 PDF 页边距,我使用了“pdfcrop' 来自 'texlive-extra-utils' 包的命令,适用于 Linux。裁剪 PDF 页边距后,我使用了 'pdftocairo' 命令删除不可见/隐藏的文本内容。要在 Debian/Ubuntu 发行版上安装“pdftocairo”工具,只需运行以下命令:

sudo apt install poppler-utils

该工具通过命令行使用,您可以像这样运行它:

pdftocairo input.pdf output.pdf -pdf

相关内容