translate-pdf

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

PDF Translation

PDF翻译

Translate PDF text while preserving structure, colors, and background styling.
在保留结构、颜色和背景样式的前提下翻译PDF文本。

Workflow

工作流程

Step 1: Extract texts

步骤1:提取文本

bash
python {skill_path}/scripts/extract_texts.py <input.pdf>
Review output to see all unique text strings in the PDF.
bash
python {skill_path}/scripts/extract_texts.py <input.pdf>
查看输出内容,确认PDF中的所有唯一文本字符串。

Step 2: Create translation mapping

步骤2:创建翻译映射表

Translate each text to target language. Create JSON file:
json
{
  "Original Text 1": "Translated 1",
  "Original Text 2": "Translated 2"
}
Save as
translations.json
next to input PDF.
将每个文本翻译成目标语言,创建JSON文件:
json
{
  "Original Text 1": "Translated 1",
  "Original Text 2": "Translated 2"
}
将文件保存为
translations.json
,放在输入PDF的同一目录下。

Step 3: Apply translations

步骤3:应用翻译

bash
python {skill_path}/scripts/translate_pdf.py <input.pdf> translations.json <output.pdf> --font <fontname>
Font options:
FontLanguage
helv
Latin (English, Spanish, Portuguese, French, German, etc.)
china-ss
Simplified Chinese
china-ts
Traditional Chinese
japan
Japanese
korea
Korean
bash
python {skill_path}/scripts/translate_pdf.py <input.pdf> translations.json <output.pdf> --font <fontname>
字体选项:
字体适用语言
helv
拉丁语系(英语、西班牙语、葡萄牙语、法语、德语等)
china-ss
简体中文
china-ts
繁体中文
japan
日语
korea
韩语

Output naming

输出文件命名

Append language suffix:
filename_EN.pdf
,
filename_ZH.pdf
,
filename_JA.pdf
添加语言后缀:
filename_EN.pdf
filename_ZH.pdf
filename_JA.pdf

Tips

提示

  • Keep proper nouns, abbreviations, technical terms unchanged when appropriate
  • CJK fonts auto-scale to 90% for better fit
  • Use transparent fill to preserve original background colors
  • 适当保留专有名词、缩写和技术术语,不进行翻译
  • CJK字体自动缩放至90%以获得更好的适配效果
  • 使用透明填充来保留原始背景颜色