完美解决方案:Java 生成复杂 Word
文档
2011 年 06 月 21 日 16:53 来源:夜半难眠博客 作者:夜半难眠 编辑:胡铭
娅 评论:1 条
本文 Tag: Java
【IT168 技术】客户要求用程序生成标准的 word 文档,要能打印,而且
不能变形,以前用过很多解决方案,都在客户严格要求下牺牲的无比惨烈。
POI 读 word 文档还行,写文档实在不敢恭维,复杂的样式很难控制不提,
想象一下一个 20 多页,嵌套很多表格和图像的 word 文档靠 POI 来写代码输
出,对程序员来说比去山西挖煤还惨,况且文档格式还经常变化。
iText 操作 Excel 还行。对于复杂的大量的 word 也是噩梦。
直接通过 JSP 输出样式基本不达标,而且要打印出来就更是惨不忍睹。
Word 从 2003 开始支持 XML 格式,用 XML 还做就很简单了。
大致的思路是先用 o!ce2003 或者 2007 编辑好 word 的样式,然后另
存为 xml,将 xml 翻译为 FreeMarker 模板,最后用 java 来解析
FreeMarker 模板并输出 Doc。经测试这样方式生成的 word 文档完全符合
o!ce 标准,样式、内容控制非常便利,打印也不会变形,生 成的文档和
o!ce 中编辑文档完全一样。
看看实际效果
首先用 o!ce【版本要 2003 以上,以下的不支持 xml 格式】编辑文档的
样式,图中红线的部分就是我要输出的部分:
评论30
最新资源