我有一个多页 PDF 文件(从 Excel 表导出)。现在我需要将大约 60 个不同的名字作为水印添加到此 PDF 的每一页。
最后,我需要为每个名称创建一个单独的文件,并带有相应的水印。例如,名称 A 作为 PDF 上的水印保存为 NameA.pdf,名称 B 保存为 NameB.pdf,依此类推。
我发现很多工具允许我将一个水印添加到多个 PDF 文件,但反之则不行。
因为我每年都需要多次执行此操作,所以可以为每个名称生成图像或印章 PDF 以供将来使用。但我需要以某种方式自动添加水印。手动操作浪费了多少时间,这让我抓狂不已。
答案1
Scribus 或 inDesign 等 DTP 软件支持数据合并,因此您可以将 PDF 表作为页面放置在 DTP 软件中,然后使用数据合并功能获取名称。
您也可以尝试将多页 Word 合并,并将 PDF 页面作为水印或设置为“隐藏在文本后面”。我遇到的一个小问题是,与通过 PDF 执行此操作相比,Word 文件的大小似乎会膨胀得更多。
或者,您可以在 Word 等中对空白页上适当放置的名称进行“邮件合并”,然后将 PDF 作为水印添加到这些唯一的页面上(“向多个水印中添加一个水印”)。
由于 PDF 具有多页特性,因此这显然很复杂,但可以将 PDF 拆分为单独的页面,执行上述操作,然后按名称将它们编译回多页
答案2
这可以很容易地使用 shell 脚本和 PDF 操作来实现自动化,例如HexaPDF或者編輯。
您说您可以预先生成带有名称的水印 PDF。生成后,您可以循环遍历水印 PDF,并将每个 PDF 应用于多页 PDF。
以下是一个例子:
$ for I in names/*.pdf; do hexapdf watermark -w "$I" -t stamp multi-page.pdf "multi-$I"; done
这会
- 用作
names/*.pdf
水印 PDF,即带有名称的单页 PDF, - 用作
multi-page.pdf
包含多页的目标 PDF, - 并将生成
multi-
带有每个水印 PDF 前缀的文件。
该命令行适用于 Linux 或 macOS,但可以轻松适用于 Windows。