一个 java 语言简化处理 pdf 的框架
master分支将作为稳定版本发布,develop分支将会不定期进行更新,欢迎大家提供宝贵意见,QQ交流群:15018726
x-easypdf是一个java语言简化处理pdf的框架,包含fop模块与pdfbox模块,fop模块以创建功能为主,基于xsl-fo模板生成pdf文档,以数据源的方式进行模板渲染;pdfbox模块以编辑功能为主,对标准的pdfbox进行扩展,添加了成吨的功能。
v3.2.1
jdk 1.8+
以创建功能为主,基于 xsl-fo 模板生成 pdf 文档,以数据源的方式进行模板渲染。
- 基于模板生成
- 内置多种数据源(xml 数据源、thymeleaf 数据源、freemarker 数据源、jte 数据源、document 数据源)
- 提供面向对象的方式生成模板(document 数据源)
- 灵活的扩展性
以编辑功能为主,对标准的 pdfbox 进行扩展,添加了成吨的功能。
- 超出页面宽度自动换行,超出页面高度自动分页
- 内置华为鸿蒙字体,天然支持中文文本
- 内置页眉页脚,简单快捷
- 内置多个组件,满足不同的需求
- 内置多种扩展器,方便解析、提取与处理文档内容
- 支持自定义组件与扩展
<dependency>
<groupId>org.dromara.x-easypdf</groupId>
<artifactId>x-easypdf</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>org.dromara.x-easypdf</groupId>
<artifactId>x-easypdf-pdfbox</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>org.dromara.x-easypdf</groupId>
<artifactId>x-easypdf-fop</artifactId>
<version>3.2.1</version>
</dependency>
mvn clean install
// 创建文档
Document document = PdfHandler.getDocumentHandler().create();
// 设置使用字体
document.setFontName("微软雅黑");
// 创建页面
Page page = new Page(document);
// 创建文本域
Textarea textarea = new Textarea(page);
// 设置文本
textarea.setText("Hello World!");
// 渲染文本
textarea.render();
// 添加页面
document.appendPage(page);
// 保存文档
document.save("E:\\PDF\\pdfbox\\document\\hello-world.pdf");
// 关闭文档
document.close();
TemplateHandler.Document.build().addPage(TemplateHandler.Page.build().addBodyComponent(TemplateHandler.Text.build().setText("hello world"))).transform("E:\\PDF\\fop\\document\\hello-world.pdf");
更多教程,请查看文档
为往圣继绝学,一个人或许能走的更快,但一群人会走的更远。