阅读目录
1. 制作 Word 模版,将你需要动态生成的字段用${}替换。
2. 将 Word文档保存为 xml 。
3. 引入项目。
项目中需要用 java 程序生成doc 文件,百度一番,发现FreeMarker 的评价比较高。
FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出,至于想详细了解 FreeMarker 的请自行百度。
1. 制作 Word 模版,将你需要动态生成的字段用${}替换。如:${name}、${age}
2. 将 Word文档保存为 xml。
3. 引入项目。将 xml 文件更改后缀名 为 .ftl, 然后引用到你的项目中。
4. 需要注意的问题:
a. word 版本不能低于 2003 ,因为 2003 才开始支持 xml。
5. 备注:
a. template.process(),接受一个 Map 和 输入流做为入参,Map 既是你需要动态生成到 doc 里面的数据,字段名必须与你在 .ftl 里面定义的一致;
b. 如果你想利用这段代码,需要有一个 .ftl 文件,并且在你的项目 src 目录下面新建 template 目录;
c.辅助文件"FreeMarker.jar 、实例项目的.ftl "。
2.如何将GIF文件转换成WORD文档gif格式的图片复制到WORD的方法:
打开Word文档,执行“插入”操作,选择“图片→来自文件”选项,在弹出的文件选择对话框中选择需要的目标GIF图像文件,然后单击“插入”按钮完成。插入指定的图像后,还可以根据需要适当调整图像的大小以及位置。如图所示:
针对gif动画图片插入word后不能动的情况,在Word文件编辑完成后,选择菜单栏中的“文件”菜单项的“另存为Web页”选项,再输入文件名和保存路径,单击“保存”按钮后Word文件就转换为Web文件了。这样系统会自动根据原始图像的颜色多少,将其转换为GIF格式。这时打开编辑的已经转换另存的Word文件,其中的GIF图象就会动了。
3.如何用freemarker动态生成word目录首先,通过xml模板可以将基本上所有的格式都事先锁定,包括页码和分页,只要你事先预设好就能够通过freemarker实现生成,接下来就是我这个问题了,目录怎么解决,下面是解决思路:1:目录的内容可以根据之前其他的内容一样解决,通过XML模板预先设置好,2:目录的页码已经研究过是不能直接通过xml模板实现动态对应了(至少我没搞定0.0)3:由于不能够一步到位,我采取了在模板中预留了一页空白页,只留了抬头的目录两个字,然后通过查询目录二字进行目录的生成,这个功能也是我刚刚折腾出来的0.0目前还没测试能不能用模板生成目录后再更新目录0.0,不过想想可以直接生成目录应该就不用这么麻烦了,至于word生成后的修改0.0我觉得还是以后再说吧。
..整体来说应该还算完美解决了,代码我就不在这贴出来了~虽然中间折腾了半天走了半天弯路~讲道理还是用的jacob来实现的。
转载请注明出处51数据库 » 动态生成word
- 0
- 0
- 0
- 0
- 0
更多推荐
动态生成word
发布评论