Marker PDF 翻译
概述¶
本流程用于将英文 PDF 文档高效转换为 Hugo 支持的 Markdown 格式,并翻译为中文,最终导出为 PDF。涵盖 Marker 工具、封面处理、格式优化、AI 翻译、章节结构调整及 PDF 合成等环节。
工具链¶
- PDF 转 Markdown 使用 Marker 工具,结合 Gemini LLM 服务,将 PDF 内容智能解析为 Markdown 格式,支持表格和代码块识别。
- 封面处理 在 OmniGraffle 中设计封面,使用 Ghostscript 转换为 A4 格式 PDF。
- 格式调整 手动优化 Markdown 格式,尤其是代码块和表格样式,可借助 ChatGPT 辅助识别和修正表格。
- AI 翻译 在 VS Code 中直接使用 AI 工具(如 Copilot 或 ChatGPT)翻译 Markdown 内容为中文。
- 章节结构调整 按 Hugo 书籍模块规范拆分章节,补充 Front Matter(如 title、weight、description、icon 等)。
- PDF 导出与合成 使用 pdf-book-exporter 工具导出中文版 PDF,并将封面、封底合并,最终上传至 Cloudflare。
操作步骤¶
1. 使用 Marker 转换 PDF¶
marker_single \
--llm_service marker.services.gemini.GoogleGeminiService \
--gemini_api_key "$GEMINI_API_KEY" \
--gemini_model_name gemini-2.5-pro \
--output_format markdown \
--output_dir ./out-md \
--processors marker.processors.table.TableProcessor,marker.processors.llm.llm_table.LLMTableProcessor,marker.processors.llm.llm_table_merge.LLMTableMergeProcessor \
--TableProcessor_detect_boxes \
--LLMTableProcessor_use_llm \
--LLMTableMergeProcessor_use_llm \
--PdfConverter_use_llm \
--TableConverter_use_llm \
--max_concurrency 3 \
a-practical-guide-to-building-agents.pdf
2. 设计并转换封面 PDF¶
在 OmniGraffle 中创建 cover.pdf,然后转换为 A4 格式:
gs -o output.pdf -sDEVICE=pdfwrite -sPAPERSIZE=a4 \
-dFIXEDMEDIA -dPDFFitPage cover.pdf
本地还需准备 back-cover-a4.pdf 作为封底。
3. Markdown 格式优化¶
- 检查并调整代码块、表格等格式问题。
- 可用 ChatGPT 辅助识别复杂表格并输出为标准 Markdown。
- 在 VS Code 中编辑和预览。
4. AI 翻译¶
- 直接在 VS Code 里用 Copilot 或 ChatGPT 翻译 Markdown 内容为中文。
- 保持原有结构,注意术语和格式一致性。
5. 拆分章节并完善 Front Matter¶
- 按 Hugo 书籍规范拆分为章节文件,设置
weight、title、description、icon等字段。 - 确保每个章节 Front Matter 完整,便于后续 PDF 导出和 Hugo 渲染。
6. 导出 PDF 并合成封面¶
- 使用
pdf-book-exporter工具导出中文版 PDF。 - 合并封面和封底 PDF,形成最终出版物。
- 上传至 Cloudflare CDN,便于分发和访问。
注意事项¶
- Marker 解析表格和代码块时可能有格式问题,需人工校对。
- AI 翻译需结合实际语境,避免生硬直译。
- Hugo 章节结构和 Front Matter 配置需严格遵循规范,保证后续自动化处理。
- PDF 合成建议本地预览,确保排版和内容完整。
如需详细命令或模板示例,可参考项目内相关脚本和 archetype 文档。