本機PDF轉Markdown,檔案完全不用上傳
作者 pdftomd.tools 團隊 · 更新於 · 約 6 分鐘閱讀
要在本機把 PDF 轉成 Markdown,可以先打開一個在瀏覽器裡執行的轉檔工具,例如我們的 PDF轉MD 工具,接著切斷網路再轉換。如果還是轉得出來,就代表檔案從頭到尾沒離開你的裝置。要寫腳本或大量處理的話,Python 函式庫或命令列工具也能在你自己的電腦上做到一樣的事。

「本機」是什麼意思?要怎麼確認
本機轉換指的是:由你裝置上的軟體讀取檔案並轉成 Markdown,而且檔案的任何副本都不會送到伺服器。這樣就排除了大部分「免費線上轉檔」網站,它們會把 PDF 上傳、在遠端處理,再把結果傳回來。也排除了那些雖然裝在你筆電上,碰到困難的部分卻偷偷呼叫雲端服務的工具。
你不需要相信任何人說的話,包括我們。不管你用哪種方式做本機PDF轉Markdown,下面兩個檢查方法對任何工具都有效:
- 拔網路。先載入工具,再關掉 Wi-Fi(或在瀏覽器的開發人員工具裡切成離線),然後轉換。需要伺服器的工具就會失敗。
- 看流量。在瀏覽器放入檔案之前先打開「網路」分頁,轉換時注意有沒有 POST 請求或其他夾帶資料的請求。如果是桌面軟體,防火牆提示或網路監控工具也能告訴你同樣的事。

方法一:在瀏覽器裡本機轉換 PDF 成 Markdown
只有一個檔案、又沒有 Python 環境時,瀏覽器工具最快。我們的轉檔工具在分頁裡用開源引擎 PDF.js 讀取 PDF:依字級判斷標題,重建清單和直線表格,也能拿掉重複的頁首和頁碼。整個流程沒有上傳這一步,所以不論是合約還是食譜,轉換都一樣保有隱私。
我們在 2026年10月19日 用腳本做了拔網路測試:在 Chrome 155.0.8059.84 打開頁面,把瀏覽器切成離線,再轉換一份有重複頁首、頁碼和一個表格的 4 頁報告。測試中,離線轉換花了 87 毫秒,產出 546 個字元的 Markdown。離線期間頁面只送出 1 個請求,是載入頁面下方一張裝飾圖片的 GET,沒有任何一個請求夾帶資料。頁面載入時也沒有任何 POST 請求。

限制和所有讀取文字層的轉檔工具一樣。掃描頁沒有可讀的文字,而我們的工具不做 OCR,所以它會告訴你檔案看起來是掃描檔,而不是亂猜。多欄版面和複雜表格轉完後要再檢查;該看哪些地方,請參考 保留格式教學。
方法二:在自己電腦上用 Python 函式庫
固定要做的工作,比較適合用 Python 函式庫:可以跑整個資料夾、把程式碼放進版本控制,也能在你自己管理的伺服器上執行。程式碼細節請看我們的 Python 教學;這裡只從「是不是本機」的角度,看四個常見的套件。
- PyMuPDF4LLM 一行就能把 PDF 轉成 Markdown:
pymupdf4llm.to_markdown("report.pdf"),完全離線執行。先看授權:它和 PyMuPDF 都是 AGPL-3.0,商業授權另外販售。 - MarkItDown 是微軟出的(MIT),能轉換很多種檔案。用
pip install 'markitdown[pdf]'安裝 PDF 擴充,再執行markitdown report.pdf -o report.md。預設的 PDF 處理是在本機;但有些選用擴充會把檔案送到 Azure Document Intelligence 或 Content Understanding,處理機密檔案時不要開。 - Docling(MIT)使用版面和表格模型,並把「在本機執行、保護敏感資料」列為功能之一。模型會在第一次使用時下載;文件裡有
docling-tools models download,可以事先替沒有網路的電腦準備好。 - Marker(程式碼 Apache-2.0;模型權重另有授權,含商業限制)一樣以模型為基礎。它的選用參數
--use_llm會把內容送到 LLM 服務,預設是 Gemini;只有指向你自己架設的模型時,才算是本機。
python -m venv .venv && . .venv/bin/activate
pip install pymupdf4llm 'markitdown[pdf]'
# then work with the network off
python -c "import pymupdf4llm; open('report.md','w').write(pymupdf4llm.to_markdown('report.pdf'))"
markitdown report.pdf -o report-markitdown.md在 Mac 上把 PDF 轉成 Markdown 也是一樣:兩個套件在 macOS 上都能用 pip 安裝,Homebrew 的 poppler 套件則提供下一個方法會用到的 pdftotext。
方法三:命令列工具
經典的離線工具是 Poppler 的 pdftotext。它速度快,幾乎到處都有裝,但輸出的是純文字,不是 Markdown:沒有 # 標題,也沒有直線表格。-layout 參數會用空白把欄位對齊,對人來說好讀,但解析器或模型需要結構時就沒那麼有幫助。格式轉換常用的 Pandoc,則完全讀不了 PDF。
為了用同一個檔案比較,我們在建置主機(Linux x86_64, 8 vCPU)上把程序的網路關掉,執行兩個 Python 套件和 pdftotext,再統計輸出結果。檔案就是瀏覽器測試用的那份 4 頁報告。我們轉檔工具那一列,是同一份檔案在「清除 AI 殘留」模式下的結果。
| 工具 | 時間 | 標題數 | 直線表格 | 頁首副本 | 頁碼行 | 被連字號斷開的單字 |
|---|---|---|---|---|---|---|
| PyMuPDF4LLM 1.28.2 | 1 秒 | 4 | 是 | 4 | 4 | 否 |
| MarkItDown 0.1.8 | 0.32 秒 | 0 | 是 | 4 | 4 | 是 |
| pdftotext 25.03.0 -layout | 0.02 秒 | 0 | 否 | 4 | 4 | 是 |
| 我們的瀏覽器轉檔工具(已清除) | 87 毫秒 | 4 | 是 | 0 | 0 | 否 |
哪種方法適合哪種工作

- 一個檔案、馬上要、什麼都不想裝:用瀏覽器。單一檔案用 PDF轉MD 工具,一大疊檔案用 批次頁面。
- 每週一個資料夾,或自動化流程:能接受 AGPL 就用 PyMuPDF4LLM,需要 MIT 和多種檔案格式就用 MarkItDown。
- 複雜版面、掃描檔、公式:Docling 或 Marker,要下載模型,執行也比較慢。
- 只要文字,拿來搜尋或快速比對:pdftotext。
- 直接放進儲存庫:在瀏覽器轉換,再照著 Obsidian 流程 做。
順帶說明一下用語:離線工具和重視隱私的工具,承諾的不是同一件事。離線只代表不需要網路;隱私還包括工具在硬碟上留下的東西,像是快取、記錄檔、當機報告。所以安裝任何軟體前,都先讀一下它的隱私說明。
機密 PDF 檢查清單
- 讀一下工具的隱私權政策,再用上面的離線測試自己驗證。我們的政策在 隱私權頁面。
- 連網安裝套件、下載模型,然後關掉網路,在本機把 PDF 轉成 Markdown。
- 雲端擴充一律保持關閉:MarkItDown 的 Azure 選項、Marker 的 LLM 模式,以及任何會呼叫外部服務的「AI 清理」開關。
- 在你自己管理的資料夾裡轉換,完成後刪掉中間的副本。
- 把 Markdown 貼進聊天模型之前要想清楚:這一步就是上傳。轉換時沒有上傳,不代表之後也一樣。
- 法律或醫療檔案,優先選可以看到原始碼的工具,並把使用的版本和輸出一起保存。
資料來源
- PDF.js — Mozilla
- PyMuPDF4LLM (README and licence) — Artifex, GitHub
- MarkItDown (README and licence) — Microsoft, GitHub
- Docling: model prefetching and offline usage — Docling project
- Marker (README and licence) — Datalab, GitHub
- Poppler (pdftotext) — freedesktop.org
常見問題
要怎麼在本機把 PDF 轉成 Markdown?
使用在分頁裡處理檔案的瀏覽器轉檔工具,或安裝 PyMuPDF4LLM、MarkItDown 這類 Python 函式庫,在自己的電腦上執行。不管哪一種,都可以斷網測試,確定沒有上傳。
怎麼知道線上轉檔工具有沒有上傳我的檔案?
打開瀏覽器的「網路」分頁再轉換,夾帶檔案的請求會顯示成 POST 或上傳流量。更簡單的方法是轉換前先斷網,會上傳的工具一斷網就跑不完。
你們的轉檔工具可以離線用嗎?
可以,只要 PDF 有文字層。先連網載入頁面,讓 PDF 引擎下載好,之後就能切斷網路。我們測試時,一份 4 頁報告在離線狀態下轉好了,沒有任何請求夾帶資料。
本機轉換用哪個 Python 函式庫最好?
在我們的小型測試中,PyMuPDF4LLM 保留的結構最多,但它是 AGPL。MarkItDown 是 MIT,支援很多格式。Docling 和 Marker 適合複雜版面和掃描檔,代價是要下載模型。
掃描的 PDF 可以在本機轉換嗎?
只有能在你電腦上跑 OCR 的工具才行。Docling 和 Marker 可以;我們的瀏覽器轉檔工具只讀文字層、不做 OCR,所以會提示檔案看起來是掃描檔。
用 pdftotext 取代 Markdown 夠嗎?
拿來搜尋和快速閱讀,通常就夠了。不過它不會產生 Markdown 語法的標題和表格,需要結構的筆記、文件和 AI 提示詞,還是要用真正的 Markdown 轉檔工具。

