如何从命令行翻译大型pdf?

Prz*_*mek 4 command-line pdf translation

我有一个很大的 pdf 文件 (83 MB),我想翻译它。我尝试pdftk使用https://www.onlinedoctranslator.com/en/拆分文件并翻译每个部分(文件不能大于 10 MB),但它非常费力。首选翻译器是 Google 引擎。如果没有简单的方法来自动化这个任务 如果你给我一个提示如何将 pdf 拆分为大小均匀的部分(以 MB 为单位),那将会很有帮助。

Rin*_*ind 6

看看translate-shell

这将安装一个名为transwhere 您可以告诉它进行翻译的命令。来自项目页面的示例。

Translate Shell(以前称为 Google Translate CLI)是由 Google Translate(默认)、Bing Translator、Yandex.Translate 和 Apertium 提供支持的命令行翻译器。它使您可以轻松访问终端中的以下翻译引擎之一:

$ trans 'Saluton, Mondo!'
Saluton, Mondo!

Hello, World!

Translations of Saluton, Mondo!
[ Esperanto -> English ]
Saluton ,
    Hello,
Mondo !
    World!
Run Code Online (Sandbox Code Playgroud)

默认情况下,会显示带有详细解释的翻译。您也可以简单地翻译文本:(只会显示最相关的翻译)

$ trans -brief 'Saluton, Mondo!'
Hello, World!
Run Code Online (Sandbox Code Playgroud)

你也可以告诉它使用一种语言:

trans :fr word
Run Code Online (Sandbox Code Playgroud)

还有更多:

trans -browser firefox :fr http://www.w3.org/
Run Code Online (Sandbox Code Playgroud)

将打开带有 www.w3.org 法语翻译的 Firefox。

没有直接翻译 PDF 的方法。文件的方法:

trans :fr file://input.txt
Run Code Online (Sandbox Code Playgroud)

现在关于PDF:

sudo apt install poppler-utils
Run Code Online (Sandbox Code Playgroud)

使用该工具,您可以从 pdf 制作文本文件。

pdftotext your.pdf your.txt
Run Code Online (Sandbox Code Playgroud)
  • 添加-layout以保留布局
  • -opw {password}如果有密码就添加

你可以提供文件

trans file://your.txt
Run Code Online (Sandbox Code Playgroud)

下一步:返回 PDF

sudo apt-get install enscript ghostscript
Run Code Online (Sandbox Code Playgroud)

并转换为 postscript,然后转换为 pdf:

enscript -p output.ps your.txt
ps2pdf output.ps your2.pdf
Run Code Online (Sandbox Code Playgroud)

我把这个工作在一个 PDF 上,里面有一些词。不能保证它适用于大文件,所以请在下面评论是否有效。