DeepSeek Harness PDF 工具箱

前言

在智能体开发或日常工作中,PDF 批量处理是常见需求:多份文档合并、按页拆分、压缩体积、加文字水印,或提取文本与图片。常见做法有:使用在线网站(存在隐私与安全风险)、用 Adobe Acrobat 逐个操作(效率低)、自己写脚本(容易出错、覆盖原文件)。下面介绍 DeepSeek Harness(DSH)的一个插件:feely0208/dsh-pdf-kit,它把这些操作封装成一条可重复、可核对的命令,输入只读、输出独立目录、同名自动加序号。

插件定位

feely0208/dsh-pdf-kit 是一个 PDF 批量处理工具箱,维护者为 feely0208。它通过 DSH 插件体系提供一系列子命令,覆盖合并、拆分、压缩、文字水印、提取文本与导出内嵌图片。插件以 MIT 许可证发布,版权归温州深鲸智能科技有限公司所有。DSH 的理念是「一切皆插件」,该插件通过目录页 https://www.skillhub.cn/plugins/feely0208/dsh-pdf-kit 与 GitHub https://github.com/feely0208/dsh-pdf-kit 对外提供。

核心功能

插件提供以下子命令与能力(均来自 README 与 package.json 核实):

  • merge:将多个 PDF 按给定顺序合并为一个 PDF,页数 = 各输入页数之和。
  • split:按页拆成单页,或按每 N 页一份拆分,每个拆分文件的页数固定。
  • compress:通过重存、图片降采样 / JPEG 重编码、字体子集化等方式压缩 PDF,页数不变,通常体积会明显变小;若文件本身无图片或已高度压缩,产物会如实报告未变小。
  • watermark:对整页平铺文字水印,支持中文;水印为文字层,文字可被提取,不适合作为防复制手段。
  • extract-text:每页导出一个 UTF-8 .txt 文件,页数与输入一致。
  • extract-images:导出页面内嵌图片的原始字节,生成图片文件(PNG/JPEG 等)。

行为说明(来自 README):
- 支持单文件、多文件(–input a.pdf,b.pdf)或整个目录(非递归,处理目录下所有 .pdf)。
- 输入永远只读;输出默认写到 <输入目录>/_输出,可用 –out 指定。
- 同名不覆盖:已存在 x.pdf 时自动写成 x-1.pdf、x-2.pdf。
- 提供参数 –json 用于脚本/CI 输出 JSON;–demo 自造样例并打印所有产物路径。

安装与启用

  1. 确保已安装 DSH(版本要求:>=0.1.0-rc.6 <0.3.0)与 Node.js(>=18)。
  2. 安装插件:
dsh plugin --profile web add @deepwhale-cn/dsh-pdf-kit
  1. 安装依赖(README 提供的命令):
brew install python3
python3 -m pip install PyMuPDF
  1. 检查本机环境:
dsh-pdf-kit --probe

典型用法

  1. 查看效果(自造样例,不碰你的文件):
dsh-pdf-kit --demo
  1. 合并多个 PDF:
dsh-pdf-kit merge --input a.pdf,b.pdf --out out
  1. 按页拆分(每页一个文件):
dsh-pdf-kit split --input report.pdf --out out
  1. 按每 2 页一份拆分:
dsh-pdf-kit split every-n --n 2 --input report.pdf
  1. 压缩 PDF:
dsh-pdf-kit compress --quality 60 --input big.pdf
  1. 加文字水印:
dsh-pdf-kit watermark --text "内部资料" --input a.pdf
  1. 提取文本:
dsh-pdf-kit extract-text --input a.pdf
  1. 导出图片:
dsh-pdf-kit extract-images --input a.pdf
  1. 脚本/CI 使用 JSON 输出:
dsh-pdf-kit merge --input a.pdf,b.pdf --json

退出码约定(来自 README):
- 0:成功
- 2:参数或输入错误
- 3:依赖缺失
- 4:执行失败

适用场景与注意

适合场景:需要批量处理 PDF 的智能体、自动化工作流、CI/CD 管道。插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。注意事项(来自 README):
- 不做 OCR:扫描件/图片型 PDF 提不出文字,只会得到空 txt 或图片。
- 不处理加密/受保护 PDF:需要密码的文件会报错退出,不会绕过。
- 不是 PDF 编辑器:不改文字、不删页、不改版式;merge/split 按整页搬运。
- 不保证压缩后一定更小:无图片或已高度压缩的文件可能压不动,产物会如实报告。
- 水印是文字层:文字可被提取,不适合作为防复制手段;不提供图片/Logo 水印、不提供密码保护。
- 目录批量是单层的,不会递归子目录。合并顺序对目录输入按文件名排序,对显式列表按给定顺序。

小结

feely0208/dsh-pdf-kit 提供了一套可重复、可核对的 PDF 批量处理能力,适合需要合并、拆分、压缩、加水印、提取文本与图片的场景。它通过一条命令完成多步操作,输入只读、输出独立目录、同名自动加序号,降低脚本出错风险。更多细节可查看目录页 https://www.skillhub.cn/plugins/feely0208/dsh-pdf-kit 与 GitHub https://github.com/feely0208/dsh-pdf-kit。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜