docbridge
一个面向 Go 的文档与图片转换框架,定位类似 documents4j:统一转换接口、格式注册、引擎适配、流水线和恢复边界,不绑定具体业务后台。

安装
go install github.com/985860612/docbridge/cmd/docbridge@latest
当前能力
- 按源/目标格式注册并选择转换器。
- PNG/JPG 正片叠底,显式将 Alpha 合成到白底 RGB。
- 多张 JPG/PNG 合成为多页 PDF。
- Windows Word VBS Bridge:DOC/DOCX → PDF,具备显式生命周期、机器级独占、超时和归属安全清理。
- PDFium WebAssembly:PDF → JPG/PNG,无 CGO、无外置 DLL、默认沙箱运行。
- CLI:
docbridge multiply、docbridge images-to-pdf、docbridge word-to-pdf、docbridge pdf-to-images。
- 输出使用临时文件后原子发布。
MuPDF 仅用于前期 PoC,不进入本项目默认实现。项目采用 Apache-2.0 许可证。
CLI
docbridge multiply --source page.png --watermark watermark.png --output result.jpg
docbridge images-to-pdf --output result.pdf page-1.jpg page-2.png
docbridge word-to-pdf --input source.docx --output result.pdf --workdir C:\docbridge\word
docbridge pdf-to-images --input result.pdf --output pages --dpi 150 --format jpeg
PDFium 由 Chromium 项目维护,采用 BSD 风格许可证并包含 Apache-2.0 第三方组件;Go 绑定
go-pdfium 为 MIT,WebAssembly 运行时 wazero 为 Apache-2.0。本项目不依赖 MuPDF,因而不引入 AGPL。
完整发布边界和检查清单见 docs/licensing.md。
word-to-pdf 仅支持安装了 Microsoft Word 的 Windows 主机;其余图片与 PDF 能力可跨平台使用。
Word Bridge 边界
Word Bridge 参考 Apache-2.0 许可的 documents4j,将 Office 自动化拆为
start / assert / convert / shutdown 四个 VBS 脚本。与其一样,机器上同一时间只允许一个
Bridge 管理 Word,转换期间不能手工打开 Word。docbridge 额外记录 WINWORD 的 PID、创建时间和
可执行文件路径;超时时只会终止三项指纹完全匹配的自有进程,不会按进程名批量清理。