Help us shape the future of Go! Take the 2026 Go Developer Survey

convert/

directory
v0.1.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 27, 2026 License: Apache-2.0

README

外部转换工具

本目录存放通过外部程序生成 PDF 的适配包,负责可执行文件查找、上下文取消与超时、 临时目录管理以及转换结果检查。

包 外部工具 输入
browser Chrome/Chromium,通过 chromedp 调用打印接口 HTML、MHTML
office LibreOffice DOCX、DOC、ODT、RTF、WPS、PPTX、XLSX 等
xps xpstopdf(libgxps) XPS

格式注册、输入适配和转换流程位于 pkg/converter/import/<format>。 这些导入器调用相应工具取得 PDF,再按目标格式返回 PDF 或交给 internal/pdf2ofd 生成 OFD。CLI 的外部任务并发限制由 cmd/ofd-converter 统一管理。

process 为 Office 和 XPS 配置进程树取消及输出管道等待上限。Unix 结束整个进程组, Windows 通过 taskkill /T 结束进程树,清理命令最多运行五秒。主进程退出或取消清理 完成后,输出管道最多再等待一秒,仍未关闭则报告错误。Windows 的进程清理回归 在 CI 中单独运行。

验证入口:

go test ./internal/convert/... ./pkg/converter/import/html ./pkg/converter/import/office ./pkg/converter/import/xps -count=1
go vet ./internal/convert/... ./pkg/converter/import/html ./pkg/converter/import/office ./pkg/converter/import/xps

外部工具未安装时,依赖真实工具的集成测试会跳过;模拟进程的取消、超时和输出校验 测试仍可运行。

Directories

Path Synopsis
Package browser 通过 chromedp 驱动 Chrome/Chromium 把 HTML/MHTML 渲染为 PDF。
Package browser 通过 chromedp 驱动 Chrome/Chromium 把 HTML/MHTML 渲染为 PDF。
Package htmlbridge 将预处理为 HTML 的输入接入现有浏览器转换链,统一复用 纸张、临时目录、资源访问、取消处理以及 PDF 导入设置。
Package htmlbridge 将预处理为 HTML 的输入接入现有浏览器转换链,统一复用 纸张、临时目录、资源访问、取消处理以及 PDF 导入设置。
Package office 通过 LibreOffice 命令行把 Office 文档(docx/doc/odt/rtf/wps/ pptx/xlsx 等)转换为 PDF。
Package office 通过 LibreOffice 命令行把 Office 文档(docx/doc/odt/rtf/wps/ pptx/xlsx 等)转换为 PDF。
Package process 配置外部转换命令的进程树取消和输出管道等待上限。
Package process 配置外部转换命令的进程树取消和输出管道等待上限。
Package xps 通过 xpstopdf 命令把 XPS 文档转换为 PDF。
Package xps 通过 xpstopdf 命令把 XPS 文档转换为 PDF。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL