跳转至

Marker PDF 翻译

概述

本流程用于将英文 PDF 文档高效转换为 Hugo 支持的 Markdown 格式,并翻译为中文,最终导出为 PDF。涵盖 Marker 工具、封面处理、格式优化、AI 翻译、章节结构调整及 PDF 合成等环节。

工具链

  1. PDF 转 Markdown 使用 Marker 工具,结合 Gemini LLM 服务,将 PDF 内容智能解析为 Markdown 格式,支持表格和代码块识别。
  2. 封面处理 在 OmniGraffle 中设计封面,使用 Ghostscript 转换为 A4 格式 PDF。
  3. 格式调整 手动优化 Markdown 格式,尤其是代码块和表格样式,可借助 ChatGPT 辅助识别和修正表格。
  4. AI 翻译 在 VS Code 中直接使用 AI 工具(如 Copilot 或 ChatGPT)翻译 Markdown 内容为中文。
  5. 章节结构调整 按 Hugo 书籍模块规范拆分章节,补充 Front Matter(如 title、weight、description、icon 等)。
  6. 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 书籍规范拆分为章节文件,设置 weighttitledescriptionicon 等字段。
  • 确保每个章节 Front Matter 完整,便于后续 PDF 导出和 Hugo 渲染。

6. 导出 PDF 并合成封面

  • 使用 pdf-book-exporter 工具导出中文版 PDF。
  • 合并封面和封底 PDF,形成最终出版物。
  • 上传至 Cloudflare CDN,便于分发和访问。

注意事项

  • Marker 解析表格和代码块时可能有格式问题,需人工校对。
  • AI 翻译需结合实际语境,避免生硬直译。
  • Hugo 章节结构和 Front Matter 配置需严格遵循规范,保证后续自动化处理。
  • PDF 合成建议本地预览,确保排版和内容完整。

如需详细命令或模板示例,可参考项目内相关脚本和 archetype 文档。