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

ofd

module
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

OFD Go Toolkit 图标

OFD Go Toolkit

GoDoc GitHub Release Coverage Status GitHub Stars

用 Go 解析、创建、转换、渲染、校验和分析 OFD 文档。提供 Go API、命令行工具、 HTTP 服务,以及桌面、Android 和浏览器阅读器。

想做什么 入口
在线体验 OFD Toolbox(覆盖本库大部分功能);浏览器阅读器;Fyne Web 阅读器
下载应用或命令行工具 GitHub Releases
转换、创建和检查文档 快速开始、功能特性
接入自己的 Go 项目 Go API、库使用指南
从源码运行和打包 构建与打包、构建指南
查询兼容性与标准资料 支持清单、文档目录

快速开始

下载 Release 中对应平台的命令行程序后运行:

# OFD 转 PDF
ofd-converter input.ofd output.pdf

# 首页输出为 PNG;页码从 1 开始
ofd-converter --page 1 --dpi 150 input.ofd page1.png

# 多页图片输出为 ZIP
ofd-converter --format png input.ofd pages.zip

# PDF 转 OFD
ofd-converter input.pdf output.ofd

# CSV / TSV 表格转 OFD,长表自动分页并重复表头
ofd-converter inventory.csv /tmp/inventory.ofd
ofd-converter --landscape inventory.tsv /tmp/inventory.ofd

# 邮件和 SVG 转 OFD,需要本机 Chrome/Chromium
ofd-converter message.eml /tmp/message.ofd
ofd-converter --landscape drawing.svg /tmp/drawing.ofd

# 从 YAML 或 JSON 清单创建 OFD
ofd-creator -i document.yaml -o result.ofd --validate

# 校验与分析
ofd-validator --format text input.ofd
ofd-analyzer --format json input.ofd

# 加密与解密;口令文件按原始 UTF-8 字节读取
ofd-crypt encrypt --password-file password.txt -o encrypted.ofd input.ofd
ofd-crypt decrypt --password-file password.txt -o plain.ofd encrypted.ofd

# 多份文档与第一份比较,生成可离线查看的图文差异报告
ofd-compare -o comparison.html original.ofd revised.ofd final.ofd

从源码运行时,在仓库根目录将程序名替换为 go run ./cmd/工具名,例如:

go run ./cmd/ofd-converter testdata/ofd-creator/helloworld.ofd /tmp/helloworld.pdf

GM/T 0099-2020 加解密使用不提供认证的 CBC;解密成功不证明内容未被篡改、证书可信或签名有效。 重要场景请独立验证签名和完整性证据,详见密码功能与实现约定及免责声明。

ofd-converter 默认使用 150 DPI 和白色背景,--page 使用多文档体合并后的全局页码。 批量转换、完整选项和退出码见 转换工具说明; 创建清单见 creator 示例,大对比报告可使用 --external-images 将图片保存到报告旁。

常规 OFD 转 PDF、图片及 PDF、CSV/TSV 导入使用 Go 实现。Office、HTML、EML、SVG、XPS 和 OCR 的 外部工具要求见 运行依赖,PDF 的可选 OpenJPEG 后端见 PDF 支持清单。

功能特性

场景 能力与工具
文档转换 ofd-converter:OFD 转 PDF、DOCX、HTML、文本、Markdown、PNG/JPG、TIFF、SVG、EPS、TeX;EML/SVG/CSV/TSV/PDF/XPS/Markdown/Office/HTML/图片转 OFD。
创建与编辑 ofd-creator:JSON/YAML 清单创建、流式自动排版、Material/Material 2/Material 3/Fluent 2/Carbon/Bootstrap 5 主题与命名样式、GB/T 9704—2012 常规公文基础版式、两端对齐、等宽分栏、页底脚注、固定图元区域、合并表格与自动列宽、图表编号与续表题、标题/图/表目录及大纲、标题与页码引用、分节编号与横纵页面混排、配置导出、数据模板填充、明细分页与重复页面、水印与条目替换;支持多文档打包、模型级拼页、选页和重排。
校验与分析 ofd-validator 检查 ZIP、XML、XSD、引用和语义,OFD/PDF 报告以跨页表格展示问题明细;ofd-analyzer 分析结构、页面、资源、附件与签名。两者均支持文本、Markdown、JSON、OFD、PDF 和 XLSX 报告,OFD/PDF 共用 flow 默认 Material 主题。
文档对比 ofd-compare:比较目录、摘要、XML、文字和画面,支持页配对、局部放大与外置图片;输出 HTML、JSON、文本和 Markdown。
档案预检与处理 ofd-archive:技术清单、归档准备目录、符合性矩阵与 SHA-256 固定性验证;preserve 对单文档执行长期保存转换,保留页面实际尺寸,清理页面、模板及资源内的图元动作,并按转换后引用分析孤立文件。
发票处理 ofd-invoice:增值税电子发票、铁路电子客票抽取,支持结构化附件与自定义标引,JSON/CSV/XLSX 汇总、去重、自校验与 PDF 合并打印。
电子签章 ofd-seal:SES V4 SM2/SM3 电子印章;签署与验证 API 支持签章生成、外部签署与完整验证,接受签章使用 Result.FullyValid()。creator 验签报告 展示完整状态及原因。外部协议示例见 ofd-signer-demo。
OFD 加解密 ofd-crypt 与 pkg/crypt:口令/证书、多接收者、独立条目密钥、多层解密和只读解密视图;写端支持整包/条目/页面范围及追加加密层。
普通数字签名与完整性保护 pkg/sign 支持 GM/T 0099 普通 SM2/SM3 SignedData、附录 B 扩展及普通多签追加;ofd-creator sign --append 保留旧签名,末次可锁定列表;sign --physical 支持主入口明文、没有已有签名入口的加密物理包。校验器分别检查物理签名和解密后的文档引用。pkg/integrity 和 ofd-crypt integrity 分别检查带时间戳清单、物理集合、内容覆盖及引用闭包。
阅读器 ofd-viewer:桌面、Android 与 Fyne Web 阅读器,Linux 提供 amd64/arm64 DEB、RPM 安装包及桌面集成;ofd-wasm:浏览器阅读器、WASM API 与 Worker 协议。
HTTP 服务 ofd-server:同步流输出、异步转换任务与远程产物传输。
Linux 桌面集成 ofd-thumbnailer:文件管理器 OFD 首页及 ZIP 包内图片缩略图,加密 OFD 显示固定挂锁图案;提供 amd64/arm64 的 ZIP、DEB 和 RPM 安装包。

Go API

在已有 Go 项目中添加依赖,Go 工具链要求以 go.mod 为准:

go get github.com/zc310/ofd@latest

下面是一个完整的 OFD 转 PDF 示例。转换入口的首参是 context.Context,长任务可传入 带取消或超时的上下文:

package main

import (
	"context"
	"log"
	"os"

	"github.com/zc310/ofd/pkg/converter"
)

func main() {
	output, err := os.Create("output.pdf")
	if err != nil {
		log.Fatal(err)
	}

	err = converter.PDF(context.Background(), "input.ofd", output)
	closeErr := output.Close()
	if err != nil {
		log.Fatal(err)
	}
	if closeErr != nil {
		log.Fatal(closeErr)
	}
}
需求 Go 入口
转换与渲染 pkg/converter、可运行示例
导入 PDF、Markdown 等格式 按需注册导入器
按页渲染、文字、搜索与导航 pkg/webreader、接入示例
创建 OFD、自动排版与流式写出 pkg/creator 库指南、pkg/creator/flow 流式创作
多文档合并、拼页和重排 pkg/merge、合并与选页说明
签署、生成印章和验证 pkg/sign 库指南
检查加密元数据与加解密 OFD pkg/crypt 库指南、密码功能与实现约定
文档对比 pkg/compare 库指南
长期保存转换与改动计划 pkg/preserve、输入限制与处理边界

输入类型、页码、DPI、格式导入、缓存与字体等细节见 Go API 使用指南。 基于本库的独立应用示例有 ofd-viewer 与 ofd-toolbox。

阅读器

桌面与 Android:ofd-viewer 提供连续阅读、缩略图、 四种页面视图、简体中文/英文界面,以及 PDF、图片和文本导出。安装包见 Releases,系统要求与截图见对应文档。

浏览器:在线阅读器在本地处理 OFD,支持文字选择、 搜索、页面导航、图层与模板显隐、附件和签名检查,以及 PNG/JPG/PDF/TXT 导出。 WASM 阅读器支持使用口令或 SM2 私钥解锁 GM/T 0099-2020 加密文档后浏览。 本地启动方式见 WASM 构建与运行;API 与 Worker 协议见 ofd-wasm。

Fyne Web:在线体验与桌面、Android 版本共用阅读界面, 支持选择本地 OFD 和导出下载,文档在浏览器内处理,需要 WebAssembly 和 WebGL。 构建与运行方式见 Web 打包。

构建与打包

在仓库根目录执行,发行版本由 Makefile 的 VERSION 统一注入:

# 当前平台的命令行工具
make build-tools

# 当前平台的命令行工具 ZIP 包
make package-tools

# 当前平台的桌面阅读器与命令行工具包
make package-desktop

构建输出默认位于 /tmp/ofd/.build,发布包位于 /tmp/ofd/dist,可通过 BUILD_DIR、DIST_DIR 覆盖。默认 make 还会生成 Linux 缩略图 DEB 和 RPM,需先安装 nFPM(make install-nfpm 并将 Go bin 目录加入 PATH,或设置 NFPM)。 Android、WASM、交叉编译、系统依赖与 Windows 7 兼容工具链的试编译说明见 构建指南。

支持清单与工具文档

支持清单区分已支持、部分支持和暂不支持,记录能力边界与兼容处理:

格式 支持范围与限制
OFD 解析、创建、渲染、校验与阅读
PDF PDF 转 OFD、资源预算与诊断
Office Office 转 OFD/PDF
HTML/MHTML 浏览器打印与格式转换
CSV/TSV 表格导入、编码与字体
EML 邮件 邮件正文、CID 图片与原附件保留
SVG 矢量图导入与纸张设置

工具的参数与退出码见功能表中的文档。标准资料、截图与维护入口汇总在 文档目录;已发布接口的破坏性变更见 CHANGELOG。 性能对比见 ofd-benchmark,实际表现取决于 文档样本、字体、操作系统和运行环境。

OFD 简介

OFD(Open Fixed-layout Document)是中国电子文件领域常用的版式文档格式,适用于 电子证照、电子发票、数字档案和公文。文件通常以 ZIP 容器组织 XML、页面、文字、 路径、图片、字体、附件和签名等资源,并保留相应的布局和绘制信息。

GB/T 33190-2016 等标准的官方查询链接见标准资料索引。 项目不随仓库分发标准全文;不同生产方的扩展与兼容处理见 OFD 支持清单。

许可证

本项目基于 Apache License 2.0 发布,声明见 LICENSE 和 NOTICE。 第三方依赖的来源与许可见 THIRD-PARTY-LICENSES,测试样例来源见 testdata/README.md,项目图标的来源与许可见图标说明。

使用本项目及其输出结果前,请阅读 免责声明。本项目不保证所有 OFD 文件的解析、转换、校验或渲染结果适用于特定业务、法律或合规场景。如发现仓库、文档 或示例中可能存在侵权内容,请通过 GitHub Issues 联系维护者。

Directories

Path Synopsis
cmd
ofd-analyzer command
Command ofd-analyzer 分析 OFD 文件结构并生成分析报告。
Command ofd-analyzer 分析 OFD 文件结构并生成分析报告。
ofd-archive command
Command ofd-archive 提供 OFD 档案预检、清单、归档准备和固定性验证。
Command ofd-archive 提供 OFD 档案预检、清单、归档准备和固定性验证。
ofd-compare command
Command ofd-compare 以选定基准对比多个 OFD 的包内文件和页面。
Command ofd-compare 以选定基准对比多个 OFD 的包内文件和页面。
ofd-converter command
Command ofd-converter 将 OFD 文档转换为 PDF、文本、Markdown 或图像等格式。
Command ofd-converter 将 OFD 文档转换为 PDF、文本、Markdown 或图像等格式。
ofd-creator command
Command ofd-creator 根据 JSON 或 YAML manifest 创建 OFD 文件。
Command ofd-creator 根据 JSON 或 YAML manifest 创建 OFD 文件。
ofd-crypt command
Command ofd-crypt 用于检查、加密和解密 GM/T 0099-2020 OFD 包,并提供完整性保护与验证。
Command ofd-crypt 用于检查、加密和解密 GM/T 0099-2020 OFD 包,并提供完整性保护与验证。
ofd-invoice command
Command ofd-invoice 从 OFD 电子发票中抽取结构化发票信息,汇总多张发票的金额, 并支持把多张发票合并为一个便于打印的 PDF。
Command ofd-invoice 从 OFD 电子发票中抽取结构化发票信息,汇总多张发票的金额, 并支持把多张发票合并为一个便于打印的 PDF。
ofd-seal command
Command ofd-seal 生成符合 GB/T 38540-2020 的 SES 电子印章文件(Seal.esl)。
Command ofd-seal 生成符合 GB/T 38540-2020 的 SES 电子印章文件(Seal.esl)。
ofd-server command
Command ofd-server 提供异步 OFD 转换的 HTTP 服务。
Command ofd-server 提供异步 OFD 转换的 HTTP 服务。
ofd-signer-demo command
Command ofd-signer-demo 是 github.com/zc310/ofd 提供的演示签名器, 用于演示 ofd-creator merge --sign-cmd 协议与 SES 结构。
Command ofd-signer-demo 是 github.com/zc310/ofd 提供的演示签名器, 用于演示 ofd-creator merge --sign-cmd 协议与 SES 结构。
ofd-thumbnailer command
Command ofd-thumbnailer 从 OFD 首页或 ZIP 包中的图片生成 PNG 缩略图, 加密 OFD 使用固定的挂锁图案。
Command ofd-thumbnailer 从 OFD 首页或 ZIP 包中的图片生成 PNG 缩略图, 加密 OFD 使用固定的挂锁图案。
ofd-validator command
Command ofd-validator 校验 OFD 文件结构、资源和签名等内容。
Command ofd-validator 校验 OFD 文件结构、资源和签名等内容。
ofd-viewer command
Command ofd-viewer 提供 OFD 文档的图形化查看和导出功能。
Command ofd-viewer 提供 OFD 文档的图形化查看和导出功能。
ofd-wasm command
Command ofd-wasm 将 OFD 文档引擎编译为 WebAssembly,供浏览器阅读器解析、渲染、 搜索和导出 OFD 文档。
Command ofd-wasm 将 OFD 文档引擎编译为 WebAssembly,供浏览器阅读器解析、渲染、 搜索和导出 OFD 文档。
internal
cache
Package cache 提供支持容量、权重和淘汰保护的并发安全缓存。
Package cache 提供支持容量、权重和淘汰保护的并发安全缓存。
cidmap
Package cidmap 为 PDF 解码和字体修复提供共享的 Adobe 字符集映射数据。
Package cidmap 为 PDF 解码和字体修复提供共享的 Adobe 字符集映射数据。
coloricc
Package coloricc 提供基于 ICC 色彩配置文件的设备颜色到 sRGB 的转换。
Package coloricc 提供基于 ICC 色彩配置文件的设备颜色到 sRGB 的转换。
container
Package container 提供 OFD 文档容器的索引、安全读取、逻辑包视图及 ZIP 压缩和规模预算。
Package container 提供 OFD 文档容器的索引、安全读取、逻辑包视图及 ZIP 压缩和规模预算。
container/entrywriter
Package entrywriter 提供带规模限制与确定性选项的 OFD ZIP 条目写入器, 供 ZIP 级处理工具(如 pkg/merge、pkg/replace)复用。
Package entrywriter 提供带规模限制与确定性选项的 OFD ZIP 条目写入器, 供 ZIP 级处理工具(如 pkg/merge、pkg/replace)复用。
contextio
Package contextio 在读写边界检查取消,不负责中断底层已经阻塞的 I/O。
Package contextio 在读写边界检查取消,不负责中断底层已经阻塞的 I/O。
convert/browser
Package browser 通过 chromedp 驱动 Chrome/Chromium 把 HTML/MHTML 渲染为 PDF。
Package browser 通过 chromedp 驱动 Chrome/Chromium 把 HTML/MHTML 渲染为 PDF。
convert/htmlbridge
Package htmlbridge 将预处理为 HTML 的输入接入现有浏览器转换链,统一复用 纸张、临时目录、资源访问、取消处理以及 PDF 导入设置。
Package htmlbridge 将预处理为 HTML 的输入接入现有浏览器转换链,统一复用 纸张、临时目录、资源访问、取消处理以及 PDF 导入设置。
convert/office
Package office 通过 LibreOffice 命令行把 Office 文档(docx/doc/odt/rtf/wps/ pptx/xlsx 等)转换为 PDF。
Package office 通过 LibreOffice 命令行把 Office 文档(docx/doc/odt/rtf/wps/ pptx/xlsx 等)转换为 PDF。
convert/process
Package process 配置外部转换命令的进程树取消和输出管道等待上限。
Package process 配置外部转换命令的进程树取消和输出管道等待上限。
convert/xps
Package xps 通过 xpstopdf 命令把 XPS 文档转换为 PDF。
Package xps 通过 xpstopdf 命令把 XPS 文档转换为 PDF。
crypt
Package crypt 实现 GM/T 0099-2020 规定的容器协议。
Package crypt 实现 GM/T 0099-2020 规定的容器协议。
fastxml
Package fastxml 提供 OFD 快速解析路径共用的零分配 XML lexer。
Package fastxml 提供 OFD 快速解析路径共用的零分配 XML lexer。
fileutil
Package fileutil 提供文件查找和文件路径身份判断。
Package fileutil 提供文件查找和文件路径身份判断。
fontrepair
Code generated by generate_cff.py; DO NOT EDIT.
Code generated by generate_cff.py; DO NOT EDIT.
layout
Package layout 把与版式无关的流式文档模型排版为 OFD 固定版式页面。
Package layout 把与版式无关的流式文档模型排版为 OFD 固定版式页面。
localization
Package localization 提供各工具共用的语言规范化逻辑。
Package localization 提供各工具共用的语言规范化逻辑。
localization/compare
Package comparelocalization 提供 OFD 对比报告使用的本地化消息。
Package comparelocalization 提供 OFD 对比报告使用的本地化消息。
localization/viewer
Package viewerlocalization 提供 OFD Viewer 使用的本地化消息。
Package viewerlocalization 提供 OFD Viewer 使用的本地化消息。
manifest
Package manifest 负责读取声明式 manifest 并构建 OFD 文档模型。
Package manifest 负责读取声明式 manifest 并构建 OFD 文档模型。
manifest/export
Package export 将 OFD 文档导出为 ofd-creator 可读取的 manifest。
Package export 将 OFD 文档导出为 ofd-creator 可读取的 manifest。
manifest/fielddocs
Package fielddocs 从 manifest 的 schema 源码中提取字段说明,供 ofd-creator schema 生成字段参考文档,也供生成器产出 fielddocs.go。
Package fielddocs 从 manifest 的 schema 源码中提取字段说明,供 ofd-creator schema 生成字段参考文档,也供生成器产出 fielddocs.go。
manifest/fielddocs/cmd/gen-fielddocs command
gen-fielddocs 读取 internal/manifest/manifest.go 的字段注释,生成 internal/manifest/fielddocs.go。
gen-fielddocs 读取 internal/manifest/manifest.go 的字段注释,生成 internal/manifest/fielddocs.go。
media
Package media 提供 OFD 包中图像资源的读取和解码能力。
Package media 提供 OFD 包中图像资源的读取和解码能力。
models
Package models 定义 OFD XML 文档的内部数据模型。
Package models 定义 OFD XML 文档的内部数据模型。
ocr
Package ocr 提供 OCR 引擎的统一接口与结果标准化。
Package ocr 提供 OCR 引擎的统一接口与结果标准化。
parser
Package parser 提供 OFD 文件的打开、解析和文档对象访问能力。
Package parser 提供 OFD 文件的打开、解析和文档对象访问能力。
pdf2ofd
Package pdf2ofd 提供纯 Go 的 PDF 到 OFD 转换实现:解析 PDF 页面几何、文字、 路径和图像 XObject,并使用 pkg/creator 输出 OFD 包,不依赖原生 PDF 渲染器。
Package pdf2ofd 提供纯 Go 的 PDF 到 OFD 转换实现:解析 PDF 页面几何、文字、 路径和图像 XObject,并使用 pkg/creator 输出 OFD 包,不依赖原生 PDF 渲染器。
pdf2ofd/config
Package config 定义 PDF 导入配置,不依赖 PDF 解析器,供 converter 与导入器共享。
Package config 定义 PDF 导入配置,不依赖 PDF 解析器,供 converter 与导入器共享。
physicalsig
Package physicalsig 读取由明文 OFD 入口定位的密文包签名,并隔离物理与逻辑引用域。
Package physicalsig 读取由明文 OFD 入口定位的密文包签名,并隔离物理与逻辑引用域。
render
Package render 将解析后的 OFD 文档渲染为图形内容。
Package render 将解析后的 OFD 文档渲染为图形内容。
render/backends/canvas
Package canvas 提供 tdewolff/canvas 的 render 后端实现:DrawContext (canvasBackend)、矢量表面与 PDF 写入器(VectorSurface/PDFDocument)、 SVG 场景、离屏栅格表面、内置栅格后端(BackendCanvas),以及默认字体引擎 (Fonts)。
Package canvas 提供 tdewolff/canvas 的 render 后端实现:DrawContext (canvasBackend)、矢量表面与 PDF 写入器(VectorSurface/PDFDocument)、 SVG 场景、离屏栅格表面、内置栅格后端(BackendCanvas),以及默认字体引擎 (Fonts)。
render/backends/canvas/canvasconv
Package canvasconv 适配OFD画笔、渐变与canvas输出。
Package canvasconv 适配OFD画笔、渐变与canvas输出。
render/backends/ftgg
Package ftgg 提供基于 FloatTech/gg 的页面栅格化后端(fogleman API + freetype/raster),通过空白导入注册到 internal/render 的注册表(Go image 包风格):
Package ftgg 提供基于 FloatTech/gg 的页面栅格化后端(fogleman API + freetype/raster),通过空白导入注册到 internal/render 的注册表(Go image 包风格):
render/backends/rastercore
Package rastercore 提供可切换栅格后端共用的渲染上下文状态机。
Package rastercore 提供可切换栅格后端共用的渲染上下文状态机。
render/backends/rasterstate
Package rasterstate 提供栅格后端 Push/Pop 时需要镜像保存/恢复的样式 状态容器。
Package rasterstate 提供栅格后端 Push/Pop 时需要镜像保存/恢复的样式 状态容器。
render/drawing
Package drawing 定义绘制后端契约、注册表,以及 render 核心与各实现包共享的公共契约类型(字体、矢量输出、SVG 场景等)。
Package drawing 定义绘制后端契约、注册表,以及 render 核心与各实现包共享的公共契约类型(字体、矢量输出、SVG 场景等)。
render/geom
Package geom 提供渲染核心与各后端共用的几何类型及OFD绘制规则。
Package geom 提供渲染核心与各后端共用的几何类型及OFD绘制规则。
render/testscene
Package testscene 提供后端一致性测试共用的“页面场景”与配套图元/度量: 同一段 DrawContext 绘制命令可依次作用到不同光栅后端,用于逐像素对照 与速度测试。
Package testscene 提供后端一致性测试共用的“页面场景”与配套图元/度量: 同一段 DrawContext 绘制命令可依次作用到不同光栅后端,用于逐像素对照 与速度测试。
report
Package report 提供报告格式推断、flow 排版、字体加载与标准文档输出。
Package report 提供报告格式推断、flow 排版、字体加载与标准文档输出。
schema
Package schema 提供内置 OFD XSD 模式的加载和查询能力。
Package schema 提供内置 OFD XSD 模式的加载和查询能力。
sealimg
Package sealimg 生成仅供演示与测试的印章图片。
Package sealimg 生成仅供演示与测试的印章图片。
search
Package search 提供基于 Unicode 字符的文本索引与匹配能力。
Package search 提供基于 Unicode 字符的文本索引与匹配能力。
securexml
Package securexml 约束密码元数据 XML 的大小、结构与包内路径。
Package securexml 约束密码元数据 XML 的大小、结构与包内路径。
server/allowlist
Package allowlist 为主机名与 IP 地址提供拉取白名单,供 ofd-server 使用。
Package allowlist 为主机名与 IP 地址提供拉取白名单,供 ofd-server 使用。
server/convertersvc
Package convertersvc 把 pkg/converter 的转换能力包成可被任务队列驱动的服务。
Package convertersvc 把 pkg/converter 的转换能力包成可被任务队列驱动的服务。
server/jobstore
Package jobstore 为 ofd-server 提供基于 bbolt 的任务持久化与队列。
Package jobstore 为 ofd-server 提供基于 bbolt 的任务持久化与队列。
server/notify
Package notify 负责把任务状态变化投递到预注册的 Webhook 目标。
Package notify 负责把任务状态变化投递到预注册的 Webhook 目标。
server/runner
Package runner 是 ofd-server 的常驻编排层:取任务、跑转换、记结果、发通知。
Package runner 是 ofd-server 的常驻编排层:取任务、跑转换、记结果、发通知。
server/transfer
Package transfer 为 ofd-server 定义输入与输出两侧的抽象:待转换文档从哪里来, 转换结果写到哪里去。
Package transfer 为 ofd-server 定义输入与输出两侧的抽象:待转换文档从哪里来, 转换结果写到哪里去。
ses
Package ses 实现 GB/T 38540-2020 规定的 SES 电子印章数据格式。
Package ses 实现 GB/T 38540-2020 规定的 SES 电子印章数据格式。
signeddata
Package signeddata 实现 GB/T 35275 的 SM2/SM3 SignedData 与原文字节绑定。
Package signeddata 实现 GB/T 35275 的 SM2/SM3 SignedData 与原文字节绑定。
testutil
Package testutil 提供跨包测试共享的辅助构造函数。
Package testutil 提供跨包测试共享的辅助构造函数。
textdoc
Package textdoc 把 OFD 页面中的文字对象提取为带位置的条目,供文本、Markdown 等编码器复用。
Package textdoc 把 OFD 页面中的文字对象提取为带位置的条目,供文本、Markdown 等编码器复用。
textdoc/docx
Package docx 提供生成 OOXML WordprocessingML(.docx)所需的最小子集。
Package docx 提供生成 OOXML WordprocessingML(.docx)所需的最小子集。
textdoc/markdown
Package markdown 把 OFD 页面渲染成 Markdown(GFM)。
Package markdown 把 OFD 页面渲染成 Markdown(GFM)。
version
Package version 提供全仓库唯一的版本号来源。
Package version 提供全仓库唯一的版本号来源。
xmlcodec
Package xmlcodec 提供 OFD XML 顺序写入及读取、修改、写回支持。
Package xmlcodec 提供 OFD XML 顺序写入及读取、修改、写回支持。
pkg
analyzer
Package analyzer 包提供 OFD 文档结构、对象、资源和引用关系分析能力。
Package analyzer 包提供 OFD 文档结构、对象、资源和引用关系分析能力。
archive
Package archive 提供 OFD 文档的档案预检、清单和归档准备辅助功能。
Package archive 提供 OFD 文档的档案预检、清单和归档准备辅助功能。
compare
Package compare 提供 OFD 包内文件、XML 结构、页面文字和渲染画面的对比能力。
Package compare 提供 OFD 包内文件、XML 结构、页面文字和渲染画面的对比能力。
converter
Package converter 提供 OFD 文档到 PDF、HTML、文本、Markdown 和图像等格式的转换能力。
Package converter 提供 OFD 文档到 PDF、HTML、文本、Markdown 和图像等格式的转换能力。
converter/import/csv
Package csv 注册 CSV 和 TSV 表格导入器,以 Go 完成断行、分页和 OFD 写出。
Package csv 注册 CSV 和 TSV 表格导入器,以 Go 完成断行、分页和 OFD 写出。
converter/import/eml
Package eml 注册 EML 邮件→OFD 与 EML→PDF 转换,依赖 Chrome/Chromium。
Package eml 注册 EML 邮件→OFD 与 EML→PDF 转换,依赖 Chrome/Chromium。
converter/import/html
Package html 为 converter 注册 HTML/MHTML 导入器,以及到 PDF 的直接 转换器。
Package html 为 converter 注册 HTML/MHTML 导入器,以及到 PDF 的直接 转换器。
converter/import/image
Package image 将单页图片和多页 TIFF 导入为带图片与 OCR 文字层的 OFD。
Package image 将单页图片和多页 TIFF 导入为带图片与 OCR 文字层的 OFD。
converter/import/markdown
Package markdown 为 converter 注册 Markdown→OFD 导入器(输入格式 "markdown")。
Package markdown 为 converter 注册 Markdown→OFD 导入器(输入格式 "markdown")。
converter/import/office
Package office 为 converter 注册 Office 文档(doc/docx/odt/rtf/wps/ pptx/xlsx 等)的导入器,以及到 PDF 的直接转换器。
Package office 为 converter 注册 Office 文档(doc/docx/odt/rtf/wps/ pptx/xlsx 等)的导入器,以及到 PDF 的直接转换器。
converter/import/pdf
Package pdf 为 converter 注册 PDF→OFD 导入器(输入格式 "pdf")。
Package pdf 为 converter 注册 PDF→OFD 导入器(输入格式 "pdf")。
converter/import/svg
Package svg 注册自包含 SVG→OFD 与 SVG→PDF 转换,依赖 Chrome/Chromium。
Package svg 注册自包含 SVG→OFD 与 SVG→PDF 转换,依赖 Chrome/Chromium。
converter/import/xps
Package xps 为 converter 注册 XPS 导入器,以及 XPS→PDF 的直接转换器。
Package xps 为 converter 注册 XPS 导入器,以及 XPS→PDF 的直接转换器。
creator
Package creator 根据高层文档模型创建 OFD 文件包。
Package creator 根据高层文档模型创建 OFD 文件包。
creator/flow
Package flow 提供流式创作:按顺序添加内容,自动断行分页并生成标准 OFD。
Package flow 提供流式创作:按顺序添加内容,自动断行分页并生成标准 OFD。
creator/template
Package template 根据导出的 JSON/YAML 创作清单与 JSON 数据生成固定版式 OFD 文档。
Package template 根据导出的 JSON/YAML 创作清单与 JSON 数据生成固定版式 OFD 文档。
crypt
Package crypt 提供 GM/T 0099-2020 OFD 检查、加密和视图功能。
Package crypt 提供 GM/T 0099-2020 OFD 检查、加密和视图功能。
integrity
Package integrity 实现 GM/T 0099 §7.4、附录 D 的清单保护与防夹带检查。
Package integrity 实现 GM/T 0099 §7.4、附录 D 的清单保护与防夹带检查。
invoice
Package invoice 从 OFD 电子发票中抽取结构化发票信息,并支持多票汇总、对账 报表与合并打印。
Package invoice 从 OFD 电子发票中抽取结构化发票信息,并支持多票汇总、对账 报表与合并打印。
merge
Package merge 提供 OFD 文档的合并能力。
Package merge 提供 OFD 文档的合并能力。
preserve
Package preserve 实现 GB/T 42133—2022 第 6 章的长期保存处理。
Package preserve 实现 GB/T 42133—2022 第 6 章的长期保存处理。
replace
Package replace 提供 OFD 包内条目的替换、新增与删除能力。
Package replace 提供 OFD 包内条目的替换、新增与删除能力。
sign
Package sign 提供 OFD 外部命令签署、SM2/SM3 SES 生成和完整签章验证。
Package sign 提供 OFD 外部命令签署、SM2/SM3 SES 生成和完整签章验证。
spec
Package spec 定义 OFD 规范的固定常量,供解析、创建、校验等各包共享,也供 外部使用者构造和校验 OFD 文档时引用,避免在各处硬编码字符串。
Package spec 定义 OFD 规范的固定常量,供解析、创建、校验等各包共享,也供 外部使用者构造和校验 OFD 文档时引用,避免在各处硬编码字符串。
validator
Package validator 提供 OFD 文件结构、资源、XML 和签名的校验能力。
Package validator 提供 OFD 文件结构、资源、XML 和签名的校验能力。
validator/report
Package report 将校验结果排版为 OFD 报告,并由同一 OFD 生成可搜索的 PDF。
Package report 将校验结果排版为 OFD 报告,并由同一 OFD 生成可搜索的 PDF。
watermark
Package watermark 提供 OFD 水印注解的添加、替换与删除能力。
Package watermark 提供 OFD 水印注解的添加、替换与删除能力。
webreader
Package webreader 包提供适合浏览器调用的 OFD 文档访问接口。
Package webreader 包提供适合浏览器调用的 OFD 文档访问接口。

Jump to

Keyboard shortcuts

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