返回顶部
🇺🇸 English
🇨🇳 简体中文
🇨🇳 繁體中文
🇺🇸 English
🇯🇵 日本語
🇰🇷 한국어
🇫🇷 Français
🇩🇪 Deutsch
🇪🇸 Español
🇷🇺 Русский
p

pdf-translate

Translates PDF documents to Chinese with professional typography. Extracts text, translates section-by-section into well-structured Markdown, then generates PDF via weasyprint with full CJK support. Use when user asks to translate a PDF, says "翻译PDF", "translate this document", or "pdf translate".

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 4.0.0
安全检测
已通过
480
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

pdf-translate

# PDF Translation Skill 翻译 PDF 文档并生成排版精美的中文文档。输出 Markdown + PDF 双格式。 ## 版本信息 **当前版本**: v4.0.0 **发布日期**: 2026-02-21 ### v4.0.0 变更 - 采用 Markdown-first 工作流:先生成结构化 Markdown,再转 PDF - PDF 引擎从 reportlab 切换为 weasyprint(支持完整 HTML/CSS 排版) - 修复代码块中文乱码问题(添加 CJK 字体 fallback) - 完整支持:标题层级、代码块、表格、列表、引用、粗体斜体 - 新增 `scripts/md2pdf.py` 通用转换脚本 ## 核心工作流 ### Step 1: 提取 PDF 文本 ```python import pdfplumber pdf = pdfplumber.open("输入文件.pdf") for i, page in enumerate(pdf.pages): text = page.extract_text() if text: print(f"--- Page {i+1} ---") print(text) ``` 长文档(>20 页)先提取前几页了解结构,再分批提取。 ### Step 2: 分析文档结构 通读全文,识别以下元素并规划 Markdown 映射: | 原文元素 | Markdown 映射 | |---------|-------------| | 文档标题 | `#` | | 章节(Chapter) | `##` | | 小节(Section) | `###` | | 子小节(Subsection) | `####` | | 目录 | 链接列表 `- [章节名](#锚点)` | | 正文段落 | 段落(空行分隔) | | 代码块 | ` ``` ` 围栏(**不翻译**内容) | | 表格 | `\| 列1 \| 列2 \|` 语法 | | 有序列表 | `1. ` 开头 | | 无序列表 | `- ` 开头 | | 引用/提示框 | `> ` 语法 | | 页脚/页码 | 丢弃 | ### Step 3: 逐章节翻译为中文 Markdown **必须逐章节翻译**,不要一次输出全文。每完成一个章节就追加写入文件。 #### 翻译规则 1. **专有名词保留英文**:首次出现时括号附英文,如"渐进式披露(Progressive Disclosure)" 2. **代码块不翻译**:` ``` ` 内代码保持原文,只翻译围栏外说明文字 3. **行内代码不翻译**:反引号内标识符、命令、文件名保持英文 4. **保持层级结构**:`#` → `##` → `###` → `####` 不跳级 5. **段落间必须空行**:每个段落、列表、代码块、表格前后都要有空行 6. **列表格式**:`- ` 或 `1. ` 开头,嵌套用 2 空格缩进 7. **表格格式**:`| 列1 | 列2 |` 语法,必须有 `|---|---|` 分隔行 8. **引用格式**:`> ` 开头 #### 翻译质量标准 参见 [translation-standards.md](references/translation-standards.md) - 三步翻译工作流:重写初稿 → 问题诊断 → 润色定稿 - 四大语言转换策略:形合→意合、被动→主动、抽象→具体、精简冗余 - 杜绝"欧化表达"和"翻译腔" #### 必须避免的格式错误 - ❌ 段落之间没有空行 → 文字挤在一起 - ❌ 列表项前没有空行 → 不被识别为列表 - ❌ 表格前后没有空行 → 表格无法渲染 - ❌ 代码块 ` ``` ` 前后没有空行 → 代码块不显示 - ❌ 标题 `##` 前后没有空行 → 标题不识别 - ❌ 翻译代码块内的代码 - ❌ 一次性输出全部内容导致截断 ### Step 4: 输出 Markdown 文件 写入 `.md` 文件,路径与原 PDF 同目录,文件名:`原文件名_中文翻译.md` ### Step 5: 生成 PDF 使用 `scripts/md2pdf.py` 将 Markdown 转为排版精美的 PDF: ```bash python3 ${SKILL_DIR}/scripts/md2pdf.py "输入.md" "输出.pdf" ``` macOS 上如果报 gobject 找不到: ```bash DYLD_FALLBACK_LIBRARY_PATH="/opt/homebrew/lib" python3 ${SKILL_DIR}/scripts/md2pdf.py "输入.md" "输出.pdf" ``` 也可以使用项目目录下的副本: ```bash python3 scripts/md2pdf.py "输入.md" "输出.pdf" ``` PDF 排版特性: - A4 版面,自动分页,页码 - 中文字体(苹方/黑体/雅黑)+ 英文字体 fallback - 深色背景代码块(支持中文注释) - 专业表格样式(交替行色、边框) - 蓝色左边框引用块 - 标题层级样式(蓝色边线、字号递减) ### Step 6: 确认输出 翻译完成后告知用户: 1. `.md` 文件路径 2. `.pdf` 文件路径 3. 文档概况(页数、字数) ## 依赖安装 ```bash # macOS brew install pango pip3 install pdfplumber markdown weasyprint # 旧方案依赖(仍可用) pip3 install reportlab pypdf ``` ## 脚本目录 | 脚本 | 用途 | |------|------| | `scripts/md2pdf.py` | **推荐** Markdown → PDF(weasyprint 引擎) | | `scripts/translate_pdf.py` | 旧版:基础 PDF 提取和生成(reportlab) | | `scripts/generate_complete_pdf.py` | 旧版:完整工作流(reportlab) | ## 故障排除 | 问题 | 解决方案 | |------|---------| | 代码块中文乱码 | 使用 `md2pdf.py`(v4.0,已修复 CJK font fallback) | | weasyprint 报 gobject 找不到 | `DYLD_FALLBACK_LIBRARY_PATH="/opt/homebrew/lib"` | | 中文字体不显示 | 确认系统有苹方或黑体字体 | | Markdown 格式错乱 | 检查块级元素前后是否有空行 | 更多问题参见 [troubleshooting.md](references/troubleshooting.md) --- **参考文档**: - [翻译标准](references/translation-standards.md) - [字体配置](references/font-configuration.md) - [故障排除](references/troubleshooting.md) - [完整示例](references/complete-example.md)

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 pdf-translate-1776281938 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 pdf-translate-1776281938 技能

通过命令行安装

skillhub install pdf-translate-1776281938

下载

⬇ 下载 pdf-translate v4.0.0(免费)

文件大小: 42.15 KB | 发布时间: 2026-4-16 17:08

v4.0.0 最新 2026-4-16 17:08
Initial release of PDF translation tool with professional Markdown-to-PDF workflow.

- Provides section-by-section translation of PDFs to Chinese, preserving document structure in Markdown.
- Generates high-quality PDFs from Markdown using weasyprint with full CJK (Chinese, Japanese, Korean) font support and modern typography.
- Fixes previous issues with code blocks displaying Chinese characters incorrectly.
- Includes robust handling of tables, lists, code, blockquotes, and headings.
- Adds `scripts/md2pdf.py` for universal Markdown-to-PDF conversion.
- Reference guides cover translation standards, font configuration, troubleshooting, and complete workflow examples.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部