linux - 如何以编程方式突出显示 PDF 文件的某些部分(例如,使用命令行)

标签 linux windows pdf adobe ghostscript

我有兴趣以编程方式突出显示 PDF 的某些部分,希望通过某种命令行工具。我的特定 PDF 文件不是 OCRed,因此文本不可搜索,但我想突出显示的特定位置出现在每个页面的相同位置。我想知道是否有一个工具可以执行此操作,我可以将以像素为单位的矩形位置输入命令行工具,它会为我突出显示相关部分。

以前的发现

我浏览了 Internet 并找到了一些网站,这些网站通过搜索文本说明了如何做到这一点。不幸的是,这对我来说是不可能的,因为我的 PDF 没有 OCR。

我在stackexchange中搜索过类似的问题,发现 <强> How to Highlight Text in PDF with commandline (windows)? https://stackoverflow.com/questions/32713633/how-to-highlight-text-in-pdf-using-acrobat-reader-from-command-line 但都没有得到答复。

潜在想法

第一个链接可能有一个给定链接指向 <强> Add comments to PDF files automagically with regular expressions 它使用 ghostscript 来包含注释。是否可以使用 ghostscript 通过坐标以类似的方式突出显示页面。 第二个链接提到使用 adobe acrobat/reader exe 文件的命令行选项,但在相关手册中搜索命令行开关不会显示任何突出显示选项。 Adobe 可能不再支持通过命令行突出显示选项,这很不幸。

我最后的想法是使用 AutoHotkey 创建一个宏,使用 GUI 程序为我做一个真正的突出显示,但那将是最后的手段。

大家怎么看?关于做什么或要检查的事情有什么想法吗?我愿意编写一个解决方案,如有必要,可以在 Windows 或 Linux 上制定解决方案。提前致谢。

最佳答案

我原以为突出显示注释是您想要的。突出显示注释是一种文本标记注释,因此采用一组描述要应用注释类型的边界框的 QuadPoints。

既然您说您知道坐标,那么这似乎适合您使用。当然,您必须在每个页面上创建注释,并且您必须学习如何使用 pdfmark 对其进行编程,但我相信它应该可以工作。

请注意,坐标在用户空间中(通常为 72 点到英寸)不是 像素,因为 PDF 不是图像格式,所以没有像素的概念,包含的图像除外。

关于linux - 如何以编程方式突出显示 PDF 文件的某些部分(例如,使用命令行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34167999/

相关文章:

php - 强制 fwrite 在 PHP 中使用\n 而不是\r\n

linux - 重启虚拟机后分区消失

pdf - 使用 Imagemagick 将一系列页面从 pdf 提取到 jpeg 时输出文件名

python - 有人在 django 中尝试过 html2pdf 吗?

pdf - PDF 文件以标题 %pdf 开头。一个有效的 pdf 文件可以有超过 1 个这样的标题吗?

linux - 为什么 java 需要基础镜像才能在 docker 上运行

linux - 在 amazon linux 上安装 ffmpeg - c++、gcc 和 libstdc++ 依赖项

c++ - windows下无法安装libuiohook?

windows - 使用 New-WebAppPool 时如何设置 .NET Framework 版本?

linux - 如何修复被视为未跟踪的 git 跟踪文件?