如何将pdftotext生成的文本文件重新转换为pdf?

如何将pdftotext生成的文本文件重新转换为pdf?

pdftotextPoppler 拥有将 pdf 文件转换为文本文件的优秀工具:

pdftotext input.pdf output.txt

有没有办法将这个文本文件重新转换为pdf?

通过转换,我的意思是获得一个与原始pdf文件具有相似页面内容的pdf文件。

如果可能,页码与原始页码相同(但这不是强制性的)。没有页码的 pdf 也可以。

精确的外观并不重要。

一些潜在的用例场景:

  1. 您不小心删除了 pdf 文件,但您从 pdftotext 中获得了该文本文件。
  2. 您想通过文本编辑器编辑文本文件并生成 pdf 文件的更新版本。
  3. 生成较小尺寸的 pdf 文件。

答案1

有很多选择。理论上,任何可以读取纯文本并可以打印的程序都可以打印到生成 PDF 的虚拟打印机。

但如果我以编程方式执行此操作,我可能会使用潘多克

pandoc filename.txt -o output.pdf

默认使用 pdflatex 来创建 PDF,但如果你不想安装像 TeX 发行版一样繁重的东西,还有其他后端可以使用,比如威易印刷或者wkhtml转pdf

pandoc --pdf-engine weasyprint filename.txt -o output.pdf

但当然,正如已经指出的那样,结果永远不会保留原始内容的格式、字体等。

答案2

与程序类似a2ps我使用 Bash 函数a2pdf

a2pdf () 
{ 
    lowriter --headless --convert-to pdf "$1"
}

您肯定知道,使用 pdftotext,PDF 的所有属性(如字体、格式和链接)都会丢失。

相关内容