本文主要是介绍java平台下经过jacob对excel_word进行打印等操作_整理关于Java进行word文档的数据动态数据填充...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
JAVA生成word优缺点对比
所用技术
优点
缺点
Jacob
功能强大
代码量大,设置样式繁琐;需要windows平台支持,无法跨平台
Apache POI
读写excel功能强大、操作简单
一般只用它读取word,能够创建简单的word,不能设置样式,功能太少
Java2word
功能强大,操作简单
能满足一般要求,不支持07格式,国人开发的,参考资料较多,需要windows平台支持
iText
功能全,能满足一般要求
不能直接生成或操作doc文档,只能生成rtf格式的文档,rtf也可以用word打开
JSP
操作简单,代码量少
能把当前页面导出简单的word,不能设置样式,美观性差,无法操作word
XML(最佳)
代码量少,样式、内容容易控制,打印不变形,完全符合office标准
需要提前设计好word模板,把需要替换的地方用特殊标记标出来
JAVA生成pdf优缺点对比
所用技术
优点
缺点
openoffice
本身就是office软件,很容易设计一些文档模板,支持java调用实现word转换成pdf
需要先安装,设计好pdf模板样式,然后用程序来填充那些预留好的变量
itext
能满足要求,本身提供了一些api
无法识别很多html的tag和attribute,无法识别css,需要用其api函数来设置样式
Jasper Report
能满足要求,市面上使用的比较多,相关文档多
复杂,很难完全掌握,需要先设计模板,强依赖于IDE进行可视化编辑
flying sauser(最佳)
能解析html和css输出成image、pdf等格式,操作简单,api强大
需要编写freemarker或velocity模板,打造html,勾画pdf的样式
二、然后我们看下使用freemarker 来对word进行的动态填充的流程
1.准备word文档(最好用office2007 如果用别的版本低版本的会打不开)
(1)提前把你要用的文档再word上做好
(2)然后把文档另存为xml
(3)然后用打开xml文件,再网上找一个xml文件 格式化在线就可以格式化,记得转完xml文件之后不要用word再打开,切记)
后面会得到一个这样的文件。
(4)拿到之后找到你要替换值得地方写上freemarker标签${}就可以了
(5) 修改完毕将模板文件的后缀改为 .ftl 注意:一定不要用word打开ftl模板文件,否则xml内容会发生变化,导致前面的工作白做了。 可以使用其他的编辑器打开
(6)接下来就是转化填充了
接下来就是总结了:
其实吧,我个人感觉这个freemarker框架没有多大卵用,说白了就是一个字符的替换,其实就是将doc转xml文件,然后替换可以将内部的文字替换,替换完,再输出保存到doc文件,感觉这个框架并没有任何啥特别的,自己就可以写,不过,这种轮子别人造好了,咱们确实拿来用就可以了。
但是,我们的目标并不是为了完成任务而去做一件事,我们更期望懂是什么?怎么做?为什么? 这是我们的核心
这篇关于java平台下经过jacob对excel_word进行打印等操作_整理关于Java进行word文档的数据动态数据填充...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!