我的PDF文档的每个页面都有一个包含此字符串的行:
%REPLACE%
我想找到并替换另一个字符串。
是否有人知道如何使用某些命令行应用程序(如PDFTK?
)执行此操作这folk给了我一个重要的线索,但我想要更直接的东西。
感谢。
答案 0 :(得分:36)
您可以尝试按如下方式修改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
注意:这种方式每次都不成功,主要是由于字体子集化
答案 1 :(得分:0)
changepagestring
只需一步即可完成,就像:
changepagestring -o -v infile.pdf search-regex replace-str outfile.pdf
然而,就像当前接受的答案一样,这是命中注定的,并且无法对所有文件按预期工作。
答案 2 :(得分:0)
对于仅在几页上进行小的更改,inkscape
可以做得很好。它还可以修复图表和表格边框中的一些问题。但是,必须单独处理每一页,并使用 pdfunite
将页面重新粘在一起。 (可以使用 pdfseparate
提取未更改的页面范围。)