我的 PDF 文档的每一页上都有一行包含以下字符串:
%REPLACE%
我想找到并用另一个字符串替换。
有谁知道如何使用一些命令行应用程序(例如 PDFTK)来做到这一点?
这个人给了我一个重要的线索,但我想要更直接的东西。
谢谢。
您可以尝试如下修改 PDF 的内容
解压PDF的文本流
pdftk file.pdf output uncompressed.pdf uncompress
使用sed将您的文本替换为另一个
sed -e "s/ORIGINALSTRING/NEWSTRING/g" <uncompressed.pdf >modified.pdf
如果此尝试成功,请使用pdftk重新压缩 PDF
pdftk modified.pdf output recompressed.pdf compress
注意:这种方式不是每次都成功,主要是字体子集
只需在几页上进行小改动,inkscape
就可以做得很好。它还可以解决图表和表格边框中的一些问题。但是,必须单独处理每一页,然后使用pdfunite
. (可以使用 提取未更改的页面范围pdfseparate
。)
changepagestring
将在一个步骤中完成此操作,就像:
changepagestring -o -v infile.pdf search-regex replace-str outfile.pdf
但是,就像当前接受的答案一样,这是命中或未命中,并且不能按预期对所有文件起作用。