快速開始
GordonKit 文件轉換器
將 DOCX 與其他文件格式轉換為 PDF、HTML、Markdown、圖片等格式,並可透過 Python 函式庫、CLI 或 HTTP API 使用。
關於此專案
此 GordonKit 開源專案負責協調 Microsoft Word、LibreOffice、Gotenberg 或 Pandoc 進行文件排版,並讓引擎選擇、驗證、fallback 報告與轉換結果保持明確且可診斷。
使用介面
依工作流程選擇適合的介面。所有介面都透過同一個 application service,並保留結構化結果、引擎政策與診斷資訊。
Python 函式庫
使用具型別的公開契約,執行單檔轉換、隔離式批次、引擎探測與 service injection。
from gordon_doc_converter import convertCLI
執行轉換、比較與引擎檢查,並輸出穩定 JSON 結果供 script 與 CI 流程使用。
gordon-doc convert report.docx --to pdfHTTP API
安裝 FastAPI extra,建立具認證 hooks、流量限制與有限並行能力的私有部署。
POST /conversions格式支援
下表整理本專案的主要轉換能力;部分路徑需安裝選用引擎或輸出套件,條件標示於表格中。
| 輸入 | DOCX | ODT | HTML | Markdown | YAML | JSON | 頁圖 | |
|---|---|---|---|---|---|---|---|---|
| DOCX | 不適用 | Auto | LO | ✓ | ✓ | ✓ | ✓ | |
| — | 不適用 | — | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ODT | LO | LO | 不適用 | — | — | — | — | — |
| HTML | P | P+ | — | 不適用 | — | — | — | — |
| Markdown | P | P+ | — | — | 不適用 | — | — | — |
安裝
先安裝核心套件,再依部署需求加入選用能力。
uv add gordon-doc-converter
uv add 'gordon-doc-converter[images,gotenberg]'
第一次轉換
從來源路徑建立請求。服務會選擇政策允許的引擎、驗證暫存輸出,並只在驗證成功後發布。
from pathlib import Path
from gordon_doc_converter import ConversionRequest, convert
request = ConversionRequest.from_source(Path("report.docx"))
result = convert(request)
print(result.artifacts[0].path)