背景:用于实现动态调整word模板中的内容
条件:office组件中格式为docx的word文件
对象与属性关系(一个学生对应一个同桌及N门学科),如图所示
一、原生模板
二、配置参数属性
1、当前对象的属性,直接写属性名称即可:${属性名}
2、属性为多选或单选的格式:eq \o\ac(□,${属性名[从0 开始的下标]!})
(1)按图所示操作,找到域
(2)打开域代码
(3)复制格式进去,并修改属性名称和下标,调整好后记得点击“确定”按钮进行保存
(4)效果
(5)有了第一个样式,第1+N个的时候可以直接复制过去,然后再进行调整
A、复制
B、选中当前代码(上图标红的部分),右键,选择“编辑域”
C、同样打开“域代码”
D、调整下标,调整完毕后,点击“确定”按钮进行保存
整体效果
PS:需要注意的是,当出现这类型的属性时,需要在实体中的属性get方法上加入@WordField(title = "标题,可不写",num=个数)
3、当前对象中对象的参数,从第二个对象开始写,且与属性之间用下划线"-"拼接:${二级对象_属性名}
4、list数组格式,需要注意的是不用加"[]":${二级对象和下标_属性名}
三、制作模板
1、将文件改成zip的压缩模式,注意,直接重命名改后缀,不要使用压缩!!!另外得是zip后缀的,rar等其他压缩格式不行!!!
2、解压文件,使用解压插件解压
3、找到document.xml文件
4、打开文件document.xml,进行内容调整
(1)去除每个参数中多余的代码(图中标红所示),每个完整的参数中间不能出现任何代码(图中标绿所示)
(2)调整完毕后要保存文件