乐于分享
好东西不私藏

Stirling-PDF 上手指南:54 个工具,从合并签名到自动化流水线

Stirling-PDF 上手指南:54 个工具,从合并签名到自动化流水线

Stirling-PDF 有 85k Star,功能列表拉出来两屏都写不完。

但我第一次打开它的界面,看到 54 个工具排成一片,愣了好几秒——该点哪个?

后来我发现,这 54 个工具里,真正高频用到的也就十来个,关键是按场景串起来。这篇文章就干这件事:按实际工作场景拆解,看完直接上手。

项目卡片

  • 项目:Stirling-PDF[1]
  • 状态:v2.13.2 / 85k Star / 持续活跃更新
  • 一句话判断:自托管 PDF 全家桶,54 个工具 + REST API + 自动化流水线,覆盖日常 90% 需求
30 秒部署

Docker 一行命令:

docker run -d -p 8080:8080 \
  -v ./data:/usr/share/tessdata \
  --name stirling-pdf \
  docker.stirlingpdf.com/stirlingtools/stirling-pdf

打开 http://localhost:8080,即用。

三个版本可选:

版本 命令后缀 适用场景 内存
Standard 日常使用,含 OCR 和格式转换 4G
Fat :fat 离线环境,内置全部字体 6G
Ultra-Lite :ultra-lite 只需基础操作,资源紧张 2G

桌面版直接去 GitHub Releases 下载安装包,Windows / Mac / Linux 都有。

场景一:合同处理

收到一份 3 页合同,需要拆出第 2 页签字后再合并回去。

拆分:进入 Split PDF → 输入页码 2 → 下载

签字:进入 Sign → 上传签章图片或在触控板上手写签名 → 拖到指定位置 → 调整大小 → 应用

合并:进入 Merge → 上传处理好的三份文件 → 调整顺序 → 下载

整个流程不到两分钟,文件全程在本地处理。

场景二:格式转换

Stirling-PDF 支持 16 种格式互转:

  • PDF → Word/Excel/PPT:方便编辑内容
  • PDF → 图片:提取页面为 PNG/JPG
  • 图片 → PDF:扫描件合并成文档
  • Markdown/HTML → PDF:技术文档排版
  • PDF → EPUB:电子书阅读器友好格式

操作路径:进入 Convert → 选择目标格式 → 上传文件 → 下载

转换引擎底层用 LibreOffice 和 Calibre。实际用下来,PDF 转 Word 的还原度比我预期好,但复杂排版还是会跑偏。如果格式不对,试试先转 HTML 再手动调,比直接修 Word 快。

场景三:扫描件处理

纸质文件扫描后是图片,需要变成可搜索的 PDF。

OCR:进入 OCR → 选择语言(支持 100+ 语言)→ 上传扫描件 → 等待处理

底层用 Tesseract 引擎。中文识别准确率取决于扫描质量,300dpi 以上效果最好。

如果扫描件歪了,先用 Rotate 调整角度,再做 OCR。

扫描效果:Scanner Effect 工具可以给普通 PDF 加上"扫描件"的质感——发给对方看起来更像原始文件。

场景四:批量加水印和密码

发给外部的文档需要保护。

加水印:Watermark → 输入文字(如"机密-仅供内部")→ 选位置、大小、透明度 → 生成

加密码:Add Password → 设置打开密码和权限密码 → 可限制打印、复制、编辑

去除敏感信息:Redact → 框选要遮盖的区域 → 应用。下载的 PDF 里这些内容被永久删除——不是用黑块盖住,而是从文件里彻底移除,无法恢复

清理元数据:Sanitize → 移除 PDF 里的 JavaScript、嵌入文件、隐藏元数据,防止信息泄露

场景五:表单和批注

收到一份 PDF 表单需要填写。

表单填写:Form Fill → 自动识别表单字段 → 直接在浏览器里填写 → 保存

添加批注:Annotate → 高亮、画线、加便签、画形状 → 适合审阅文档时标记修改意见

对比两版 PDF:Compare → 上传两个版本 → 自动高亮差异,适合合同修改后的核对

进阶玩法:Pipeline 自动化

大部分人用完基础工具就停了,但 Pipeline 才是 Stirling-PDF 真正拉开差距的地方。

UI 内拖拽流水线

进入 Automate → 拖拽工具组成流水线 → 上传文件 → 一键执行

比如:OCR → 压缩 → 加水印 → 加密码,四步合成一步。

文件夹监控

在服务器上配置监控目录,PDF 进去自动处理、结果出来:

{
  "operations": [
    {"operation": "ocr", "parameters": {"language": "eng+chi_sim"}},
    {"operation": "compress", "parameters": {"optimizeLevel": "2"}},
    {"operation": "watermark", "parameters": {"watermarkText": "CONFIDENTIAL"}}
  ]
}

把 PDF 和这个 JSON 一起丢进监控目录,60 秒后在 finished 目录取结果。

REST API 集成

每个工具都有对应的 API 端点,可以批量处理:

# 压缩 PDF
curl -X POST http://localhost:8080/api/v1/general/compress-pdf \
  -H "X-API-KEY: your-api-key" \
  -F "fileInput=@document.pdf" \
  -o compressed.pdf

# PDF 转 Word
curl -X POST http://localhost:8080/api/v1/convert/pdf/to/docx \
  -H "X-API-KEY: your-api-key" \
  -F "fileInput=@document.pdf" \
  -o document.docx

API 文档地址:http://localhost:8080/swagger-ui.html

可以用 API Key 认证,适合集成到 CI/CD 或内部系统。

配置技巧

自定义设置

挂载配置文件:

docker run -d -p 8080:8080 \
  -v ./settings.yml:/configs/settings.yml \
  -v ./data:/usr/share/tessdata \
  docker.stirlingpdf.com/stirlingtools/stirling-pdf

常用配置项:

system:
  defaultLocale: "zh-CN"          # 默认中文界面
  tessdataDir: "/usr/share/tessdata" # OCR 语言包路径
security:
  enableLogin: true                # 启用登录
  csrfDisabled: false              # 生产环境建议开启 CSRF

OCR 语言包

默认只有英文。中文 OCR 需要额外安装:

# 下载中文语言包
wget https://github.com/tesseract-ocr/tessdata_fast/raw/main/chi_sim.traineddata
# 放到 tessdata 目录
mv chi_sim.traineddata ./data/

重启容器后生效。chi_sim 是简体中文,chi_tra 是繁体。

反向代理配置

Nginx 反代需要注意:

location / {
    proxy_pass http://localhost:8080;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    client_max_body_size 100M;  # 大文件上传需要调大
}
边界和注意

Stirling-PDF 很强,但别指望它替代所有 PDF 工具。我用了一段时间,踩过几个坑:

复杂 PDF 编辑:如果要深度修改 PDF 结构(比如编辑扫描件里的文字),还是得 Adobe Acrobat。Stirling-PDF 有 pdfTextEditor 工具能编辑文本层,但复杂排版搞不定。

OCR 准确率:取决于扫描件质量。300dpi 以上、清晰的打印体效果最好。手写体和复杂排版的准确率会下降。

大文件处理:默认内存配置下,超过 100MB 的 PDF 处理会比较慢。Fat 版本给了 6G 内存,处理大文件更稳。

企业功能需要付费:SSO、审计日志、文件共享、集群部署这些是 proprietary 功能,需要 Server Plan 或 Enterprise 授权。

快速对照表

下次遇到 PDF 需求,直接查这张表:

你的需求 去哪个工具
合并多个 PDF Merge
拆出指定页面 Split / Extract Pages
PDF 转 Word Convert → PDF to Word
扫描件变可搜索 OCR
加密码保护 Add Password
批量加水印 Watermark
去除敏感信息 Redact / Sanitize
填写 PDF 表单 Form Fill
压缩文件大小 Compress
自动化多步操作 Automate(Pipeline)

项目地址:github.com/Stirling-Tools/Stirling-PDF[2]

文档:docs.stirlingpdf.com[3]

API 文档:启动服务后访问 http://localhost:8080/swagger-ui.html


这里会继续拆真实可用的开发者工具:少讲概念,多看入口、成本和坑点。你只需要判断一件事——它值不值得放进自己的工作流。

引用链接

[1]Stirling-PDF: https://github.com/Stirling-Tools/Stirling-PDF

[2]github.com/Stirling-Tools/Stirling-PDF: https://github.com/Stirling-Tools/Stirling-PDF

[3]docs.stirlingpdf.com: https://docs.stirlingpdf.com