此页面所有软件内容、截图、价格、介绍等均来源于互联网,地址均为第三方提供,请谨慎下载。



OFD Reader & Writer

在使用OFDRW前,请务必悉知 《OFD Reader & Writer免责声明》

若clone和文档预览存在困难,请移步 https://gitee.com/ofdrw/ofdrw

Talk is cheap,Show me the code. ——Linus Torvalds

OFD Reader & Writer 开源的OFD处理库,支持文档生成、数字签名、文档保护、文档合并、转换、导出等功能。

本项目采用Apache 2.0许可,请尊重开源项目作者,在软件中附带OFDRW开源软件许可,在遵守开源协议前提下可免费商业化使用

根据《GB/T 33190-2016 电子文件存储与交换格式版式文档》标准实现版式文档OFD库(含有书签)。

项目采用Maven模块管理,各模块如下:

  • ofdrw-core OFD核心API,参考《GB/T 33190-2016 电子文件存储与交换格式版式文档》实现的基础数据结构。
  • ofdrw-font 生成OFD字体相关。
  • ofdrw-layout OFD布局引擎库,用于文档构建和渲染。
  • ofdrw-pkg OFD文件的容器,用于文档的打包。
  • ofdrw-reader OFD文档解析器,用于OFD的反序列化以及签名签章。
  • ofdrw-sign OFD文档数字签章。
  • ofdrw-gm 用于支持签章模块需要的国密电子签章数据结构。
  • ofrw-crypto 用于实现《GM/T 0099-2020 开放版式文档密码应用技术规范》对OFD的密码相关功能。
  • ofdrw-gv OFDRW 所有模块所共用的全局变量。
  • ofdrw-converter OFD文档转换。 New
  • ofdrw-tool OFD文档工具,文档合并、裁剪、重组。
  • ofdrw-graphics2d 实现了AWT Graphics2D接口,生成OFD文档内容。 New
  • ofdrw-full 上述所有模块整合包,用于简化依赖引入。

注:

  • 您可以根据需求裁剪模块优化程序体积。
  • 您可以仅引用ofdrw-core中定义的数据结来构建属于您自己的OFD库,就像ofdrw-graphics2d那样。

QuickStart

Maven项目引入依赖

<dependency>
  <groupId>org.ofdrw</groupId>
  <artifactId>ofdrw-full</artifactId>
  <version>2.0.6</version>
</dependency>

OFDRW 将持续保证API的向下兼容,您可以放心的升级OFDRW库至最新版本。

  • 若您没有采用Maven管理项目,请参阅项目中pom.xml文件中的依赖,手动解决三方依赖包问题
  • 若出现NoClassFound等错误,请检查相关包是否存在冲突。

如何生成一份OFD文档,如何把大象放入冰箱?

public class HelloWorld {
    public static void main(String[] args) throws IOException {
        Path path = Paths.get("HelloWorld.ofd");
        try (OFDDoc ofdDoc = new OFDDoc(path)) {
            Paragraph p = new Paragraph("你好呀,OFD Reader&Writer!");
            ofdDoc.add(p);
        }
        System.out.println("生成文档位置: "   path.toAbsolutePath());
    }
}

效果如下:

  • 文档生成API示例
  • 文档布局示例
  • Canvas示例
  • 文字抽取示例
  • 水印示例
  • 段落布局示例
  • 文档编辑示例
  • 附件操作示例
  • 数字签名清理示例

相关文档目录:

  • OFD R&W 布局设计
  • OFD R&W Canvas
  • OFD R&W 签名签章快速入门
  • OFD R&W 加密 完整性保护协议
  • OFD R&W 转换OFD/OFD导出
  • OFD R&W 字形数据解析
  • OFD R&W 文档合并

相关解决方案

HTML5

HTML5前端预览解决方案: DLTech21/ofd.js . https://github.com/DLTech21/ofd.js

  • jszip解压。
  • fast-xml-parser解析xml为json数据。
  • svgcanvas渲染实现。
  • 完全浏览器OFD页面渲染。

开源阅读器

XilouReader New:chingliu/XilouReader . https://gitee.com/chingliu/XilouReader

  • 基于pdfium的ofd/pdf双引擎版式阅读器。

OfdiumEx:roy19831015/OfdiumEx . https://github.com/roy19831015/OfdiumEx

  • 基于cairo库渲染OFD。
  • Windows客户端阅读器

图片转换

目前已经被合并到ofdrw-converter 模块

推荐开源OFD图片转换解决方案: QAQtutu/ofdbox . https://github.com/QAQtutu/ofdbox

  • 支持OFD解析。
  • 基于java.awt解析OFD实现图片绘制。

阅读器

阅读器方面,您也可以尝试:

  • 数科网维公司 . 数科OFD阅读器 . www.ofd.cn
  • Foxit . 福昕OFD . www.foxitsoftware.cn/ofd/

源码安装

支持 JDK 1.8 及以上版本构建。

在项目根目录下运行:

mvn install

就可以完成项目的构建打包,安装到本地Maven仓库中。

社区交流

Share and Communicate

为方便社区建设与交流,提供社区QQ群:
  • 04群号: 690642037 (新)
  • 03群号: 717320255 (满)
  • 02群号: 745517934 (满)
  • 01群号: 577682453 (满)

  • 若您遇到与OFD相关的技术问题,欢迎进群交流!
  • 若您对项目有建设性意见或方案欢迎提交IssuePull Request

参与贡献

参与贡献代码尽量遵守下面代码规约:

  1. 原则上禁止public方法、类、接口进行删除:为了保留向下兼容性,如果是更新升级请标注过去已经暴露方法、接口、类为过时标记@Deprecated,并注释置新的实现位置@deprecated {@link SomethingNew}
  2. 请为每个public方法、类、接口添加注释:为了保留开发者的便利性,注释一般为多行注释,注释内容需要包含参数以及方法或类的作用、参数意义、返还值以及意义、异常抛出、以及参数意义。

>> GitHub 第一次参与开源(多语言)

  • 贡献指南。

项目情况

进展

>> 项目进展

在OFDRW 2.0.0之后,项目进展以发布说明的方式在项目托管仓库中描述。

项目关注度

项目获得 Star曲线

<365>

网友提问

调用转pdf时出现报错:Table os/2 does not exist. 从OFD转PDF时,出现字体颜色丢失。 文件转图片时,图片日期数字等出现严重错误 ofd模板文件怎么渲染成最终的ofd文件 html页面 怎么转成ofd文件 pdf 透明文字转换成ofd时 透明隐藏字体会失效从而展现出来 最近很多全电发票OFD转图片后变成黑白的 ofd导出的多页html,堆叠在一起 OFD转换报错 ofd转图片速度太慢了,太慢了 模板如何创建 pdf转换ofd后,填充色部分缺失,表格框线缺失! pdf转换ofd后,水印颜色变深,并且浮在上面,遮挡了内容 pdf转换ofd出现字体颜色加粗 如何将tif文件打包成可以预览的页面 170M的pfd文件转换成ofd文件变成800M了,建议优化下

温馨提示! 即将跳转到 第三方 网站下载具体内容

点赞(89) 打赏

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部