当前位置: 首页 > 软件库 > 程序开发 > PDF工具包 >

x-easypdf

pdf 构建工具
授权协议 MulanPSL2
开发语言 Java
所属分类 程序开发、 PDF工具包
软件类型 开源软件
地区 国产
投 递 者 韦宏朗
操作系统 跨平台
开源组织
适用人群 未知
 软件概览


一个用搭积木的方式构建pdf的框架(基于pdfbox/fop


项目概述

  • x-easypdf 是一个基于 pdfbox/fop 二次封装的框架,目前拥有两大模块:pdfbox模块】fop模块】,两个模块均可单独使用,也可以结合使用,帮助开发者快速生成 pdf 文档
  • pdfbox模块】主打 pdf 编辑功能,以组件化的形式进行 pdf 的构建
  • fop模块】主打 pdf 导出功能,采用数据源的方式对 xsl-fo 模板进行转换,同时提供 java 对象的方式构建dom模板,即使完全不懂 xsl-fo 的语法,也能轻松上手写出对应的模板

使用环境

jdk 1.8+


项目特性

pdfbox模块

  •  简单智能

支持自动换行与分页

  • 表单填写

内置文档表单填写器(可填写表单中的文本域)

  • 图像转换

内置文档图像器(可将文档整个转换为图片,或将文档中的某几页转换为图片)

  • 文档提取

内置文档提取器(可提取文档中的文本与图片)

  • 文档替换

内置文档替换器(可替换文档中的图片)

  • 文档分析

内置文档分析器(可分析文档中的文本与图片信息,包含坐标、内容、字体大小等)

  • 文档拆分

内置文档拆分器(可将文档按照页码拆分成一个或多个文档)

  • 数字签名

内置文档签名器(可对文档进行数字签名)

  • 内置字体

内置细体 | 正常 | 粗体三种开源中文字体(华为鸿蒙字体)

  • 组件丰富

内置水印、页眉、页脚、文本、图片、表格、矩形、圆形、线条、布局、条形码(一维码/二维码)等组件

fop模块

  • 基于模板生成
  • 内置多种数据源(xml 数据源、thymeleaf 数据源、freemarker 数据源、jte 数据源、document 数据源)
  • 提供面向对象的方式生成模板(document 数据源)
  • 灵活的扩展性

软件架构


代码扫描

  • SonarQube

  • Gitee Scan

  • 文档构建 XEasyPdfDocument document = XEasyPdfHandler.Document.build();Copy to clipboardErrorCopied 页面构建 XEasyPdfPage page = XEasyPdfHandler.Page.build();Copy to clipboardErrorCopied 页眉构建 XEasyPdfHeader he

  • XEasyPdfDocument dos=XEasyPdfHandler.Document.load(pdfFile); XEasyPdfDocumentExtractor extractor = dos.extractor(); // 提取图片images List<BufferedImage> dataImages=new ArrayList<>(); extractor.extractIma

  • 简单用搭积木的方式的pdf处理框架  x-easypdf-guide

 相关资料
  • 一、构建工具的作用 二、Java 主流构建工具 三、Maven 参考资料 一、构建工具的作用 构建一个项目通常包含了依赖管理、测试、编译、打包、发布等流程,构建工具可以自动化进行这些操作,从而为我们减少这些繁琐的工作。 其中构建工具提供的依赖管理能够可以自动处理依赖关系。例如一个项目需要用到依赖 A,A 又依赖于 B,那么构建工具就能帮我们导入 B,而不需要我们手动去寻找并导入。 在 Java 项

  • 你需要的就是一套工具,能把你自动化构建的需求表示成可执行的顺序的任务(tasks),比如编译源代码,拷贝生成的class文件,组装交付。每一个任务都是一个工作单元,任务的顺序很重要,我们把任务和相互之间的依赖建模成一种有向无环图,比如下面这个: 有向无环图 包含两个部分: 节点(node):一个工作单元,在这里就是一个任务,比如编译源代码 边(edge): 一个有方向的边,表示相邻节点之间的依赖关

  • 遵循下面的引导,在 OS X 上构建 Electron . 前提 OS X >= 10.8 Xcode >= 5.1 node.js (外部) 如果你通过 Homebrew 使用 Python 下载,需要安装下面的 Python 模块: pyobjc 获取代码 $ git clone https://github.com/electron/electron.git Bootstrapping b

  • Ant Ant 是 Apache 组织下的一个跨平台的项目构建工具,它是一个基于任务和依赖的构建系统,是过程式的。开发者需要显示的指定每一个任务,每个任务包含一组由 XML 编码的指令,必须在指令中明确告诉 Ant 源码在哪里,结果字节码存储在哪里,如何将这些字节码打包成 JAR 文件。Ant 没有生命周期,你必须定义任务和任务之间的依赖,还需要手工定义任务的执行序列和逻辑关系。这就无形中造成了大

  • SCons 简介 SCons 是一套由 Python 语言编写的开源构建系统,类似于 GNU Make。它采用不同于通常 Makefile 文件的方式,而是使用 SConstruct 和 SConscript 文件来替代。这些文件也是 Python 脚本,能够使用标准的 Python 语法来编写。所以在 SConstruct、SConscript 文件中可以调用 Python 标准库进行各类复杂的

  • 我是不是漏掉了什么?

  • 从整个项目的研发流程中来看,从项目的创建、开发、测试到上线,San CLI对每个环节都提供了相应的命令支持,极大的提升了研发体验和开发效率。 图中可以看到San CLI UI对应的各环节的功能实现,在整个研发流程中,首先要做的就是项目创建。

  • 主要内容:创建 Maven 项目IntelliJ IDEA 提供了一个构建工具选项,用于从我们的源代码自动创建可执行应用程序。它提供了将 Java 代码编译、链接和打包成可执行形式的功能。 IntelliJ IDEA 支持各种 Java 应用程序构建工具,例如 Maven、Gradle、Ant 等。在本节中,我们将讨论 Maven 和 Gradle 构建工具。 创建 Maven 项目 要创建 Maven 项目,请执行以下操作: