Stirling PDF - 開源全功能 PDF 工具箱
Stirling-Tools/Stirling-PDF
GitHub 最火 PDF 應用(8.5萬星), 支援桌面/瀏覽器/私有部署, 50+工具覆蓋編輯/簽名/OCR/自動化, 無需上傳第三方服務
成熟度:維護活躍, 最近提交1天前, 最新版本4天前釋出, 但有468個待解決issue
项目体检
部署 · Docker 单命令启动(docker run -p 8080:8080), 默认端口8080, 支持桌面客户端和 Kubernetes 部署
成本 · 开箱即用, 无需外部 API Key, 高级 OCR 功能可能需配置 Tesseract 语言包, 企业功能(SSO/审计)需商业授权
技术 · Java 后端 + Spring Boot 框架, 前端 Web UI, 调用开源命令行工具(如 PDFtk/Ghostscript)处理 PDF
许可 · NOASSERTION(许可证未明确声明), 项目自述为 open-core 模式, 核心功能开源但企业特性需付费, 商用前建议咨询官方
活跃 · 高度活跃, 最新版本 v2.13.2 发布于4天前, 296名贡献者, 昨日仍有代码提交
解決什麼
傳統 PDF 編輯工具要麼需要購買昂貴的 Adobe Acrobat 訂閱, 要麼只能上傳到線上服務冒隱私洩露風險。Stirling PDF 提供完全私有化的 PDF 處理方案, 涵蓋合併、拆分、簽名、水印、OCR 識別、格式轉換、壓縮最佳化等 50 多項功能, 所有操作在本地或自建伺服器完成, 文件不出內網。支援桌面客戶端、瀏覽器訪問和 REST API 三種使用方式, 既能滿足個人臨時需求, 也能整合到企業工作流實現批次自動化處理。
為何火
GitHub 上獲得 8.5 萬星的核心原因是功能全面 + 部署簡單 + 隱私優先。一條 Docker 命令即可啟動完整服務, 無需複雜配置; 介面支援 40 多種語言(含中文), 降低使用門檻; 提供視覺化工作流編排, 非技術人員也能搭建 PDF 自動化流程。專案最初作為 24 小時 ChatGPT 程式設計挑戰的產物在 Reddit 引發關注, 後經作者持續迭代成熟, 成為開源社群對抗 Adobe 壟斷的標杆專案。企業使用者看重其 SSO 整合和審計日誌能力, 開發者則青睞完整的 API 文件可快速對接現有系統。
核心功能
- 基礎編輯: 合併/拆分 PDF, 旋轉/刪除頁面, 重新排序, 提取圖片和文本
- 高階處理: OCR 文字識別(支援多語言), 新增/移除水印, 數字簽名, 敏感資訊塗黑
- 格式轉換: PDF 與 Word/Excel/圖片互轉, 支援批次處理
- 最佳化壓縮: 減小檔案體積, 調整 DPI, 清理後設資料
- 自動化工具: 無程式碼視覺化流程編排, REST API 支援百萬級文件批處理
- 企業特性: 單點登入(SSO), 操作審計, 多租戶隔離(付費版)
安裝
Docker 快速啟動(推薦):
docker run -p 8080:8080 docker.stirlingpdf.com/stirlingtools/stirling-pdf
訪問 http://localhost:8080 即可使用。
桌面客戶端: 從 GitHub Releases 下載對應系統的安裝包(Windows/macOS/Linux)。
Kubernetes 部署: 參考官方文件的 Helm Chart 配置, 適合生產環境高可用部署。
中文使用者注意: 國內網路可直接訪問 Docker 映象源, OCR 功能首次使用時會自動下載語言包, 中文識別需確保 Tesseract 包含簡體中文訓練資料。
適合誰
- 個人使用者: 需要頻繁處理 PDF 但不想訂閱 Adobe 的學生、自由職業者
- 中小企業: 需要內網部署保護客戶合同、財務報表等敏感文件的公司
- 開發團隊: 需要整合 PDF 生成/處理能力到業務系統(如電子簽約、發票管理)的技術團隊
- 隱私敏感場景: 政府機構、醫療行業等不能將文件上傳公網的組織
不適合: 需要複雜排版設計的專業出版場景(建議用 Adobe InDesign), 以及對響應速度有極致要求的高併發場景(Java 後端效能不如 Go/Rust 實現)。
社群評價
HN 討論(366 點贊, 103 條評論)中爭議集中在**"ChatGPT 開發"宣傳**。批評者認為 AI 生成程式碼質量堪憂且存在安全隱患, 有使用者吐槽"花 3 小時讓 ChatGPT 寫三次插值函式都不對"; 支持者反駁"能用就行, 何必在意工具", 並指出實際 PDF 處理呼叫的是人類編寫的成熟命令列工具(PDFtk/Ghostscript), ChatGPT 只負責最初的 Web 介面腳手架。
作者澄清: 專案並非完全由 AI 生成, 僅最初 24 小時用 ChatGPT 3.0 搭建原型作為實驗, 此後一年多完全靠人工迭代。這一說明平息部分質疑, 但仍有使用者擔心暴露到公網的安全性, 建議僅內網使用或嚴格輸入驗證。
正面評價集中在功能豐富度和部署便捷性, 多位使用者表示已替代 Adobe 用於日常工作, 稱讚其"開源社群少有的全棧解決方案"。
選型對比
vs Adobe Acrobat: Adobe 功能更強(專業排版/3D PDF), 但年費 $239 且必須聯網啟用; Stirling 免費開源, 覆蓋 90% 日常需求, 完全離線可用, 但缺少高階編輯(如段落重排)。
vs 同類開源工具(如 pdf.js/PDFtk): pdf.js 僅提供渲染庫需自行開發介面, PDFtk 是命令列工具學習曲線陡; Stirling 整合數十個底層工具並提供統一 Web UI, 開箱即用。
vs 線上服務(iLovePDF/Smallpdf): 線上服務便捷但文件需上傳第三方, 免費版有次數限制; Stirling 私有部署無限制, 適合處理敏感文件, 代價是需自行維護伺服器。
已知坑
- 許可證不明確: GitHub 顯示 NOASSERTION, 專案自述為 open-core(核心開源+企業功能付費), 商用前務必聯絡官方確認授權範圍
- OCR 依賴外部包: 中文識別需手動配置 Tesseract 語言資料, 首次使用可能遇到"語言包缺失"報錯
- 高併發效能: Java 後端在處理大檔案(>100MB)或高併發時記憶體佔用較高, 生產環境建議配置 4GB+ 記憶體
- 468 個未關閉 issue: 反映功能請求多但維護精力有限, 部分邊緣 bug 修復較慢
- API 文件需梯子: Scalar 託管的 API 文件在國內訪問不穩定, 建議本地部署後檢視 Swagger UI
安装方式:docker