PDF文档生成方案

这里采用的技术为freemarker + itext + flying saucer

1) 编写Freemarker或者Velocity模板,打造HTML,勾画PDF的样式(请任意使用CSS)

2) 在你的业务逻辑层引入Freemarker的引擎或者Velocity的引擎,并将业务逻辑层中可以获取的数据和模板,使用引擎生成最终的内容;

3) 将代码做简单封装后,调用,生成PDF。

注意:
1.中文输出问题:一是在java代码里引用字体,二是在页面上引用字体。
这里写图片描述
这里写图片描述

2.输入的HTML页面必须是标准的XHTML页面。页面的顶上必须是这样的TML页面的语法必须是非常严谨的,所有标签都必须闭合等等(由于flying-Saucer做了XML解析的工作,不严谨会报错的。),这是对页面的第一个要求。

3.要用到图片的地方写相对路径的形式,323图片位置则必须在Java代码中指定。
renderer.getSharedContext().setBaseURL(“file:/D:/”);
也有另一种方法就是直接在标签中写绝对路径。

猜你喜欢

转载自blog.csdn.net/security_2015/article/details/80225801