java 生成 PDF 总结(1)

如何用java生成 PDF  文档,运行环境在linux上。自己在网上找了好多资料,总结下来做个分享。后面也会建立几个demo供大家参考。主要分为以下几个部分:

1.  概述

2.  itext

3. itext+ freemarker

4.  总结

1. 概述

生成方式一般有三种方式,一种直接生成,一种通过模板生成,一种通过word转为pdf。第一种方式格式需要自己去写,比较麻烦;第二种方式通过html转为pdf,格式不能完全满足; 第三种方式目前尚未有免费的可靠的在linux上的解决方法。

序号

方式

方案

优势

缺点

备注

1

直接生成

itextPdf

iText有很强大的PDF处理能力,可基于制作的pdf模板生成

样式和排版不好控制,直接写PDF文档,数据的动态渲染比较麻烦

 
2

 

模板生成

Itext+ freemarker

解析html或ftl输出pdf

需要编写freemarker 模板,html

 

3

Itext+Flying sauser+ freemaker

解析html,输出pdf

需要编写freemarker 模板,html

 
4

Word转pdf

Poi (doc 转 pdf)

简单

格式有时会混乱

 
5

收费包(spire.doc、aspose-words)

效果不错

收费

 
6

jacob

完美保持原doc格式

Windows平台

 
7

openOffice

 

需要安装服务,有时也会有格式错误

 
8

docx4j/documents4j

 

Windows平台

 

接下来几个章节,我会针对itextPdf、Itext+ freemarker进行介绍,并提供demo。

posted @ 2022-12-04 12:19  小log  阅读(1809)  评论(0编辑  收藏  举报