我构建了一个开源、隐私优先的 PDF 工具套件(80+ 工具),以取代 Adobe。以下是技术栈。
发布: (2026年1月8日 GMT+8 22:51)
4 分钟阅读
原文: Dev.to
Source: Dev.to

“为什么”
如果你是开发者,可能会讨厌把敏感文档(税表、合同、银行对账单)上传到随意的“免费 PDF 合并”网站。你知道“免费”往往意味着“你就是产品”。
我想要一个工具:
- 100 % 本地运行(文件永不离开浏览器)
- 开源(可以自行验证代码)
- 不烂(界面简洁、无广告、无“每天 3 个文件”限制)
于是,我构建了 PDFCraft —— 一个基于 Next.js 与 WebAssembly 的 MIT 许可证客户端 PDF 工具包。
- 仓库:
- 演示:
技术栈
前端框架
Next.js(React)—— 用于静态站点生成(SSG),以获得 SEO 效果和快速的首屏加载。
样式
Tailwind CSS —— 提供干净、响应式的 UI,兼容移动端。
核心引擎(重活儿)
- WebAssembly (Wasm): 在浏览器中以接近原生的速度运行繁重的图像和 PDF 处理逻辑。
- 库:
pdf-lib– PDF 操作pdf.js– PDF 渲染tesseract.js– 客户端 OCR
架构:零服务器处理
PDFCraft 最有趣的地方在于它没有的东西:用于文件处理的后端 API。
传统方式:
用户上传文件 → 服务器(AWS/GCP)处理 → 用户下载
PDFCraft:
用户选择文件 → 浏览器(Wasm/WebWorkers)处理 → 用户下载
对开发者的重要性
- 隐私: 没有服务器看到你的文件;不存在可被攻击的数据库。
- 成本: 托管费用低(仅静态文件)。
- 速度: 大文件上传不产生网络延迟。
已实现的关键功能
PDFCraft 最初是一个简单的合并工具,后来发展为 80+ 工具 的套件。亮点包括:
- 客户端 OCR: 使用
tesseract.js与 Web Workers,从扫描的 PDF 中提取文本且不会卡住主线程。 - 转换: 在浏览器内直接将 PDF 转换为 Office 格式(Word/Excel)和图像(JPG/PNG/HEIC)。
- 安全性: AES 加密/解密完全在客户端完成。
自托管与扩展
隐私是核心目标,所以你可以自行运行:
- 克隆仓库并部署到任意平台(Vercel、Netlify,或自己的 Docker 容器)。
- 一个 Chrome 扩展(仓库中包含 zip)提供无需打开新标签页的快捷访问。
开源与路线图
该项目在 MIT 许可证下完全开源。我正在寻找贡献者帮助:
- 改进对超大文件(500 MB+)的 PDF 查看器性能。
- 为 OCR 添加更多语言支持。
如果你对 WebAssembly 或 PDF 操作感兴趣,欢迎查看代码!
GitHub: