den*_*nny 14 command-line pdf text-processing
我想从 PDF 文件中查找特定文本或单词并将其替换为另一个文本并从命令行创建一个新的 PDF 文件。我尝试在文本文件上使用sed, find,awk系列,但我想使用 PDF 文件。哪个命令行实用程序可以帮助我?
Fel*_*xJN 23
使用pdftk通过解压缩文件,然后编辑sed并最终重新压缩它。
pdftk input.pdf output uncompressed.pdf uncompress
sed -i 's/foo/bar/g' uncompressed.pdf
# uncompressed.pdf now has all the changes
pdftk uncompressed.pdf output changed.pdf compress
Run Code Online (Sandbox Code Playgroud)
当然,图像中的任何文本都不能像这样更改。
可能的解决方案可能如下所示......
您可以使用poppler-utils包中的几个工具将 pdf 文件转换为纯文本文件。
它可以通过以下方式安装:
sudo apt-get install poppler-utils
Run Code Online (Sandbox Code Playgroud)
将 pdf 文件转换为文本文件
pdftotext /home/USER/Desktop/test.pdf /home/USER/Desktop/test.txt
Run Code Online (Sandbox Code Playgroud)
现在您可以对 pdf 文件进行编辑和替换。
之后,您可以使用名为cups-pdf或text2pdf 的包将其转换回来。
可能不是完美的解决方案,但应该能发挥作用。
希望这可以帮助!