PDF轉Markdown線上線下免費工具
這裡為您整理了 開源、免費 且效果較好的 PDF 轉 Markdown 工具,分為 離線/命令行(推薦,隱私安全、批次處理) 和 線上/視覺化 兩大類。
🥇 第一梯隊:離線開源神器(效果最好、支援公式/表格/版面還原)
1. Marker (VikParuchuri/marker) ⭐ 目前開源界 SOTA (State of the Art)
- 特點:基於深度學習模型,專為「高品質 Markdown 輸出」設計。極佳處理雙欄、數學公式、表格、程式碼區塊、圖片提取。輸出乾淨,不需大量人工修正。
- 語言:Python (依賴 PyTorch/Transformers)
- 安裝/使用:bash
pip install marker-pdf # 命令行單檔 marker_single input.pdf output_dir # 批次處理 marker input_folder output_folder - 優點:效果接近商業級;支援 GPU 加速;輸出含圖片資料夾與完整 .md。
- 缺點:首次下載模型需較大空間 (~2-3GB);純 CPU 推理較慢(建議有 NVIDIA GPU)。
2. Nougat (facebookresearch/nougat) ⭐ 學術論文/科技文檔首選
- 特點:Meta 開源,專為科學論文設計(NeurIPS 2022)。將 PDF 視為圖片,用 Vision Transformer 直接生成 Markdown。數學公式轉 LaTeX 效果極強,表格還原度高。
- 語言:Python
- 安裝/使用:bash
pip install nougat-ocr nougat input.pdf -o output_dir - 優點:對 LaTeX 生成的 PDF 還原度極高;純視覺模型,不依賴 PDF 內部結構(掃描件也能處理)。
- 缺點:速度慢(需 GPU);對一般商業文件/簡報版面處理不如 Marker 好;輸出純文字流,版面還原度弱於 Marker。
3. pdf2md (opendatalab/pdf2md / MinerU) ⭐ 中文支援最強、工業級
- 特點:開放資料實驗室開源,MinerU 專案核心。針對中文版面、雙欄、複雜表格、公式優化極深。提供 API 服務 可自架。
- 語言:Python
- 體驗:
- 線上 Demo:MinerU Demo (免費額度)
- 本地部署:pip install magic-pdf (輕量版) 或 Docker 部署完整版。
- 優點:中文斷詞、版面分析最強;支援輸出中間格式;有 GUI 工具。
4. pymupdf4llm (PyMuPDF 官方新專案) ⭐ 輕量、快速、無 AI 依賴
- 特點:PyMuPDF (fitz) 官方推出,專為 LLM/RAG 設計。不需要下載幾 GB 模型,純程式邏輯解析。速度極快。
- 語言:Python
- 安裝:pip install pymupdf4llm
- 代碼範例:python
import pymupdf4llm md_text = pymupdf4llm.to_markdown("input.pdf") with open("output.md", "w", encoding="utf-8") as f: f.write(md_text) - 優點:極快、依賴極少、適合大量文件預處理/RAG 切片。
- 缺點:公式/表格/複雜版面還原弱於 AI 模型類;適合結構簡單的文檔。
🥈 第二梯隊:經典命令行工具 (穩定、無 AI、適合結構化文檔)
| 工具 | 語言/平台 | 優點 | 缺點 |
|---|---|---|---|
| pandoc | Haskell (跨平台) | 萬能轉換器,支援格式最多,元數據處理強。 | 須依賴 pdftotext 或 pdfplumber 先抽文字,版面/公式/表格幾乎全失。 |
| pdftohtml (poppler-utils) | C++ (Linux/macOS/Win) | 系統級工具,極快,輸出 HTML 再轉 MD。 | 輸出帶大量 inline style,Markdown 混亂。 |
| pdfplumber / PyMuPDF (fitz) | Python | 程式庫,可自訂邏輯提取文字/表格/圖片座標。 | 需自己寫代碼組裝 Markdown,非開箱即用。 |
🌐 線上免費工具 (無需安裝,注意隱私:勿上傳機密文件)
- MinerU 官方 Demo (mineru.net)
- 推薦指數:⭐⭐⭐⭐⭐ 開源專案官方維護,效果最接近本地部署版,支援大文件、批次、公式、表格。
- Marker 官方線上體驗 (Hugging Face Spaces: vikhyatk/marker)
- 效果同本地 Marker,但有排隊時間限制。
- Nougat 線上體驗 (Hugging Face Spaces: facebook/nougat)
- 適合單篇論文測試。
- PDF2MD / pdftomarkdown.com 等商業免費額度網站
- 通常有頁數/大小限制,隱私風險較高。
🖥️ 圖形介面 (GUI) 工具 (適合不習慣命令列者)
| 工具 | 開源狀態 | 特點 |
|---|---|---|
| MinerU GUI | ✅ 開源 | 官方提供 magic-pdf 指令或 Docker 含 WebUI,最推薦。 |
| PDFMathTranslate | ✅ 開源 | 雙語翻譯+保留版面,基於 pdf2md/MinerU,支援輸出 Markdown/HTML。 |
| MarkItDown (Microsoft) | ✅ 開源 | Microsoft 新專案,統一介面呼叫各種後端,有簡單 CLI/GUI。 |
| Obsidian + 插件 | 插件開源 | 插件:PDF to Markdown (呼叫 pdf.js/pymupdf) 或 Omnivore。 |
💡 選型建議總結
| 你的場景 | 首選方案 | 備選方案 |
|---|---|---|
| 追求最高品質、複雜版面(雙欄/公式/表格)、有 GPU | Marker (本地) | Nougat (純論文) |
| 中文文檔為主、不想折騰環境、要最好效果 | MinerU 線上 Demo 或 MinerU Docker/GUI | Marker CPU 版 |
| 無 GPU、大量文件、只需文字結構、速度優先 | pymupdf4llm (Python 庫) | pdftotext + Pandoc |
| 學術論文、掃描件、極度依賴 LaTeX 公式 | Nougat (需 GPU) | MinerU |
| 一次性小文件、非機密、不想裝軟體 | MinerU 官網 / Marker HF Space | - |
| 需整合進 RAG/LLM 管線、程式化批次 | Marker / pymupdf4llm / MinerU API | - |
🛠️ 快速上手範例 (以 Marker 為例)
bash
# 1. 建議建立虛擬環境
python -m venv venv && source venv/bin/activate # Win: venv\Scripts\activate
# 2. 安裝 (會自動下載模型權重,首次較慢)
pip install marker-pdf[full] # [full] 包含表格/公式額外依賴
# 3. 執行轉換
# 單檔
marker_single your_file.pdf ./output_folder
# 批次 (多線程)
marker ./pdf_folder ./output_folder --workers 4
# 4. 結果
# ./output_folder/your_file/your_file.md (純淨 Markdown)
# ./output_folder/your_file/images/ (提取的圖片)提示:若遇到 torch 版本衝突,請先根據您的 CUDA 版本安裝 PyTorch 官網指令,再 pip install marker-pdf --no-deps。
如果需要 一鍵執行且不想管 Python 環境,請直接用 Docker 運行 MinerU:
bash
docker run -d -p 8080:8080 -v $(pwd)/data:/home/opendatalab/data opendatalab/mineru-gradio:latest
# 瀏覽器開啟 <http://localhost:8080> 即可使用 Web 介面批次轉換