1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java根据 freemarker 生成word文档包含图片和动态表格

java根据 freemarker 生成word文档包含图片和动态表格

时间:2020-12-02 13:34:44

相关推荐

java根据 freemarker 生成word文档包含图片和动态表格

需求

根据提供的模板样式,生成相对应的word文档,之前可以用xdoc生成,但是目前这个需求是需要动态生成excel表格,有的单元格需要隐藏不展示,所以这边利用freemarker标签解析,根据数据来控制展示和隐藏。

模板样式

操作步骤

将word模板另存为wordxml 格式

用记事本或者其他文本文件打开,然后格式化xml文件格式

这样的文档很难找标签处理格式,所以这里推荐一个格式化链接地址

格式化链接地址:/codeformat/xml

正常格式化完这个:standalone=“yes”? 会没有,我们需要手动加一下,防止格式错误。

格式化后的样式如图:标签展开很容易找到

固定相对应的数据,调整标签,替换需要生成的数据。

<!-- 标签内中的展示判断 --><#if title??> 存在则展示 </#if><#if title?exists> 判断是否存在,存在则展示 </#if><#if !(title?exists)> 不存在则展示 </#if><!-- 填充数据的展示 -->${title} : 默认展示,如果为null 时会报错,"" 会展示空${title?if_eixsts} : 如果存在就展示,不存在就不展示<!-- 遍历的展示 --><#list hiddens as h> </#list><!-- 图片的展示主要注意[w:name 命名定义] 以及 [w:binData 标签中图片的base64位字节码] --><v:shape id="图片 3" o:spid="_x0000_i1025" type="#_x0000_t75" alt="" style="width:96.75pt;height:96pt"><v:fill o:detectmouseclick="t"/><w:binData w:name="${"wordml://"+(h_index+p_index)+".jpg"}" xml:space="preserve">${p.base64Str?if_exists}</w:binData><v:imagedata src="${"wordml://"+(h_index+p_index)+".jpg"}" o:title=""/></v:shape><!-- 表格中单元格的合并 [数字代表合并几格]--><w:gridSpan w:val="2"/>

文件重命名为 .ftl 格式,模板设计最终稿如下,感兴趣的可以参考一下

<?xml version="1.0" encoding="utf-8" standalone="yes"?><?mso-application progid="Word.Document"?><w:wordDocument xmlns:w="/office/word//wordml" xmlns:aml="/aml/2001/core" xmlns:wpc="/office/word//wordprocessingCanvas" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:mc="/markup-compatibility/" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wx="/office/word//auxHint" xmlns:wne="/office/word//wordml" xmlns:wsp="/office/word//wordml/sp2" xmlns:sl="/schemaLibrary//core" w:macrosPresent="no" w:embeddedObjPresent="no" w:ocxPresent="no" xml:space="preserve"><w:ignoreSubtree w:val="/office/word//wordml/sp2"/><o:DocumentProperties><o:Author>Administrator</o:Author><o:LastAuthor>Windows 用户</o:LastAuthor><o:Revision>2</o:Revision><o:TotalTime>1</o:TotalTime><o:Created>-06-12T01:22:00Z</o:Created><o:LastSaved>-06-12T01:22:00Z</o:LastSaved><o:Pages>1</o:Pages><o:Words>35</o:Words><o:Characters>203</o:Characters><o:Lines>1</o:Lines><o:Paragraphs>1</o:Paragraphs><o:CharactersWithSpaces>237</o:CharactersWithSpaces><o:Version>15</o:Version></o:DocumentProperties><o:CustomDocumentProperties><o:KSOProductBuildVer dt:dt="string">2052-11.1.0.14309</o:KSOProductBuildVer><o:ICV dt:dt="string">662959BD0F934DF59C57E52CF4D629B8</o:ICV></o:CustomDocumentProperties><w:fonts><w:defaultFonts w:ascii="Times New Roman" w:fareast="宋体" w:h-ansi="Times New Roman" w:cs="Times New Roman"/><w:font w:name="Times New Roman"><w:panose-1 w:val="0603050405020304"/><w:charset w:val="00"/><w:family w:val="Roman"/><w:pitch w:val="variable"/><w:sig w:usb-0="E0002EFF" w:usb-1="C000785B" w:usb-2="00000009" w:usb-3="00000000" w:csb-0="000001FF" w:csb-1="00000000"/></w:font><w:font w:name="宋体"><w:altName w:val="SimSun"/><w:panose-1 w:val="0600030101010101"/><w:charset w:val="86"/><w:family w:val="auto"/><w:pitch w:val="variable"/><w:sig w:usb-0="00000003" w:usb-1="288F0000" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001" w:csb-1="00000000"/></w:font><w:font w:name="黑体"><w:altName w:val="SimHei"/><w:panose-1 w:val="0609060101010101"/><w:charset w:val="86"/><w:family w:val="Modern"/><w:pitch w:val="fixed"/><w:sig w:usb-0="800002BF" w:usb-1="38CF7CFA" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001" w:csb-1="00000000"/></w:font><w:font w:name="黑体"><w:altName w:val="SimHei"/><w:panose-1 w:val="0609060101010101"/><w:charset w:val="86"/><w:family w:val="Modern"/><w:pitch w:val="fixed"/><w:sig w:usb-0="800002BF" w:usb-1="38CF7CFA" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001" w:csb-1="00000000"/></w:font><w:font w:name="@黑体"><w:panose-1 w:val="0609060101010101"/><w:charset w:val="86"/><w:family w:val="Modern"/><w:pitch w:val="fixed"/><w:sig w:usb-0="800002BF" w:usb-1="38CF7CFA" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001" w:csb-1="00000000"/></w:font><w:font w:name="@宋体"><w:panose-1 w:val="0600030101010101"/><w:charset w:val="86"/><w:family w:val="auto"/><w:pitch w:val="variable"/><w:sig w:usb-0="00000003" w:usb-1="288F0000" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001" w:csb-1="00000000"/></w:font></w:fonts><w:styles><w:versionOfBuiltInStylenames w:val="7"/><w:latentStyles w:defLockedState="off" w:latentStyleCount="371"><w:lsdException w:name="Normal"/><w:lsdException w:name="heading 1"/><w:lsdException w:name="heading 2"/><w:lsdException w:name="heading 3"/><w:lsdException w:name="heading 4"/><w:lsdException w:name="heading 5"/><w:lsdException w:name="heading 6"/><w:lsdException w:name="heading 7"/><w:lsdException w:name="heading 8"/><w:lsdException w:name="heading 9"/><w:lsdException w:name="footer"/><w:lsdException w:name="caption"/><w:lsdException w:name="Title"/><w:lsdException w:name="Default Paragraph Font"/><w:lsdException w:name="Subtitle"/><w:lsdException w:name="Strong"/><w:lsdException w:name="Emphasis"/><w:lsdException w:name="HTML Top of Form"/><w:lsdException w:name="HTML Bottom of Form"/><w:lsdException w:name="Normal Table"/><w:lsdException w:name="No List"/><w:lsdException w:name="Outline List 1"/><w:lsdException w:name="Outline List 2"/><w:lsdException w:name="Outline List 3"/><w:lsdException w:name="Placeholder Text"/><w:lsdException w:name="No Spacing"/><w:lsdException w:name="Light Shading"/><w:lsdException w:name="Light List"/><w:lsdException w:name="Light Grid"/><w:lsdException w:name="Medium Shading 1"/><w:lsdException w:name="Medium Shading 2"/><w:lsdException w:name="Medium List 1"/><w:lsdException w:name="Medium List 2"/><w:lsdException w:name="Medium Grid 1"/><w:lsdException w:name="Medium Grid 2"/><w:lsdException w:name="Medium Grid 3"/><w:lsdException w:name="Dark List"/><w:lsdException w:name="Colorful Shading"/><w:lsdException w:name="Colorful List"/><w:lsdException w:name="Colorful Grid"/><w:lsdException w:name="Light Shading Accent 1"/><w:lsdException w:name="Light List Accent 1"/><w:lsdException w:name="Light Grid Accent 1"/><w:lsdException w:name="Medium Shading 1 Accent 1"/><w:lsdException w:name="Medium Shading 2 Accent 1"/><w:lsdException w:name="Medium List 1 Accent 1"/><w:lsdException w:name="Revision"/><w:lsdException w:name="List Paragraph"/><w:lsdException w:name="Quote"/><w:lsdException w:name="Intense Quote"/><w:lsdException w:name="Medium List 2 Accent 1"/><w:lsdException w:name="Medium Grid 1 Accent 1"/><w:lsdException w:name="Medium Grid 2 Accent 1"/><w:lsdException w:name="Medium Grid 3 Accent 1"/><w:lsdException w:name="Dark List Accent 1"/><w:lsdException w:name="Colorful Shading Accent 1"/><w:lsdException w:name="Colorful List Accent 1"/><w:lsdException w:name="Colorful Grid Accent 1"/><w:lsdException w:name="Light Shading Accent 2"/><w:lsdException w:name="Light List Accent 2"/><w:lsdException w:name="Light Grid Accent 2"/><w:lsdException w:name="Medium Shading 1 Accent 2"/><w:lsdException w:name="Medium Shading 2 Accent 2"/><w:lsdException w:name="Medium List 1 Accent 2"/><w:lsdException w:name="Medium List 2 Accent 2"/><w:lsdException w:name="Medium Grid 1 Accent 2"/><w:lsdException w:name="Medium Grid 2 Accent 2"/><w:lsdException w:name="Medium Grid 3 Accent 2"/><w:lsdException w:name="Dark List Accent 2"/><w:lsdException w:name="Colorful Shading Accent 2"/><w:lsdException w:name="Colorful List Accent 2"/><w:lsdException w:name="Colorful Grid Accent 2"/><w:lsdException w:name="Light Shading Accent 3"/><w:lsdException w:name="Light List Accent 3"/><w:lsdException w:name="Light Grid Accent 3"/><w:lsdException w:name="Medium Shading 1 Accent 3"/><w:lsdException w:name="Medium Shading 2 Accent 3"/><w:lsdException w:name="Medium List 1 Accent 3"/><w:lsdException w:name="Medium List 2 Accent 3"/><w:lsdException w:name="Medium Grid 1 Accent 3"/><w:lsdException w:name="Medium Grid 2 Accent 3"/><w:lsdException w:name="Medium Grid 3 Accent 3"/><w:lsdException w:name="Dark List Accent 3"/><w:lsdException w:name="Colorful Shading Accent 3"/><w:lsdException w:name="Colorful List Accent 3"/><w:lsdException w:name="Colorful Grid Accent 3"/><w:lsdException w:name="Light Shading Accent 4"/><w:lsdException w:name="Light List Accent 4"/><w:lsdException w:name="Light Grid Accent 4"/><w:lsdException w:name="Medium Shading 1 Accent 4"/><w:lsdException w:name="Medium Shading 2 Accent 4"/><w:lsdException w:name="Medium List 1 Accent 4"/><w:lsdException w:name="Medium List 2 Accent 4"/><w:lsdException w:name="Medium Grid 1 Accent 4"/><w:lsdException w:name="Medium Grid 2 Accent 4"/><w:lsdException w:name="Medium Grid 3 Accent 4"/><w:lsdException w:name="Dark List Accent 4"/><w:lsdException w:name="Colorful Shading Accent 4"/><w:lsdException w:name="Colorful List Accent 4"/><w:lsdException w:name="Colorful Grid Accent 4"/><w:lsdException w:name="Light Shading Accent 5"/><w:lsdException w:name="Light List Accent 5"/><w:lsdException w:name="Light Grid Accent 5"/><w:lsdException w:name="Medium Shading 1 Accent 5"/><w:lsdException w:name="Medium Shading 2 Accent 5"/><w:lsdException w:name="Medium List 1 Accent 5"/><w:lsdException w:name="Medium List 2 Accent 5"/><w:lsdException w:name="Medium Grid 1 Accent 5"/><w:lsdException w:name="Medium Grid 2 Accent 5"/><w:lsdException w:name="Medium Grid 3 Accent 5"/><w:lsdException w:name="Dark List Accent 5"/><w:lsdException w:name="Colorful Shading Accent 5"/><w:lsdException w:name="Colorful List Accent 5"/><w:lsdException w:name="Colorful Grid Accent 5"/><w:lsdException w:name="Light Shading Accent 6"/><w:lsdException w:name="Light List Accent 6"/><w:lsdException w:name="Light Grid Accent 6"/><w:lsdException w:name="Medium Shading 1 Accent 6"/><w:lsdException w:name="Medium Shading 2 Accent 6"/><w:lsdException w:name="Medium List 1 Accent 6"/><w:lsdException w:name="Medium List 2 Accent 6"/><w:lsdException w:name="Medium Grid 1 Accent 6"/><w:lsdException w:name="Medium Grid 2 Accent 6"/><w:lsdException w:name="Medium Grid 3 Accent 6"/><w:lsdException w:name="Dark List Accent 6"/><w:lsdException w:name="Colorful Shading Accent 6"/><w:lsdException w:name="Colorful List Accent 6"/><w:lsdException w:name="Colorful Grid Accent 6"/><w:lsdException w:name="Subtle Emphasis"/><w:lsdException w:name="Intense Emphasis"/><w:lsdException w:name="Subtle Reference"/><w:lsdException w:name="Intense Reference"/><w:lsdException w:name="Book Title"/><w:lsdException w:name="Bibliography"/><w:lsdException w:name="TOC Heading"/><w:lsdException w:name="Plain Table 1"/><w:lsdException w:name="Plain Table 2"/><w:lsdException w:name="Plain Table 3"/><w:lsdException w:name="Plain Table 4"/><w:lsdException w:name="Plain Table 5"/><w:lsdException w:name="Grid Table Light"/><w:lsdException w:name="Grid Table 1 Light"/><w:lsdException w:name="Grid Table 2"/><w:lsdException w:name="Grid Table 3"/><w:lsdException w:name="Grid Table 4"/><w:lsdException w:name="Grid Table 5 Dark"/><w:lsdException w:name="Grid Table 6 Colorful"/><w:lsdException w:name="Grid Table 7 Colorful"/><w:lsdException w:name="Grid Table 1 Light Accent 1"/><w:lsdException w:name="Grid Table 2 Accent 1"/><w:lsdException w:name="Grid Table 3 Accent 1"/><w:lsdException w:name="Grid Table 4 Accent 1"/><w:lsdException w:name="Grid Table 5 Dark Accent 1"/><w:lsdException w:name="Grid Table 6 Colorful Accent 1"/><w:lsdException w:name="Grid Table 7 Colorful Accent 1"/><w:lsdException w:name="Grid Table 1 Light Accent 2"/><w:lsdException w:name="Grid Table 2 Accent 2"/><w:lsdException w:name="Grid Table 3 Accent 2"/><w:lsdException w:name="Grid Table 4 Accent 2"/><w:lsdException w:name="Grid Table 5 Dark Accent 2"/><w:lsdException w:name="Grid Table 6 Colorful Accent 2"/><w:lsdException w:name="Grid Table 7 Colorful Accent 2"/><w:lsdException w:name="Grid Table 1 Light Accent 3"/><w:lsdException w:name="Grid Table 2 Accent 3"/><w:lsdException w:name="Grid Table 3 Accent 3"/><w:lsdException w:name="Grid Table 4 Accent 3"/><w:lsdException w:name="Grid Table 5 Dark Accent 3"/><w:lsdException w:name="Grid Table 6 Colorful Accent 3"/><w:lsdException w:name="Grid Table 7 Colorful Accent 3"/><w:lsdException w:name="Grid Table 1 Light Accent 4"/><w:lsdException w:name="Grid Table 2 Accent 4"/><w:lsdException w:name="Grid Table 3 Accent 4"/><w:lsdException w:name="Grid Table 4 Accent 4"/><w:lsdException w:name="Grid Table 5 Dark Accent 4"/><w:lsdException w:name="Grid Table 6 Colorful Accent 4"/><w:lsdException w:name="Grid Table 7 Colorful Accent 4"/><w:lsdException w:name="Grid Table 1 Light Accent 5"/><w:lsdException w:name="Grid Table 2 Accent 5"/><w:lsdException w:name="Grid Table 3 Accent 5"/><w:lsdException w:name="Grid Table 4 Accent 5"/><w:lsdException w:name="Grid Table 5 Dark Accent 5"/><w:lsdException w:name="Grid Table 6 Colorful Accent 5"/><w:lsdException w:name="Grid Table 7 Colorful Accent 5"/><w:lsdException w:name="Grid Table 1 Light Accent 6"/><w:lsdException w:name="Grid Table 2 Accent 6"/><w:lsdException w:name="Grid Table 3 Accent 6"/><w:lsdException w:name="Grid Table 4 Accent 6"/><w:lsdException w:name="Grid Table 5 Dark Accent 6"/><w:lsdException w:name="Grid Table 6 Colorful Accent 6"/><w:lsdException w:name="Grid Table 7 Colorful Accent 6"/><w:lsdException w:name="List Table 1 Light"/><w:lsdException w:name="List Table 2"/><w:lsdException w:name="List Table 3"/><w:lsdException w:name="List Table 4"/><w:lsdException w:name="List Table 5 Dark"/><w:lsdException w:name="List Table 6 Colorful"/><w:lsdException w:name="List Table 7 Colorful"/><w:lsdException w:name="List Table 1 Light Accent 1"/><w:lsdException w:name="List Table 2 Accent 1"/><w:lsdException w:name="List Table 3 Accent 1"/><w:lsdException w:name="List Table 4 Accent 1"/><w:lsdException w:name="List Table 5 Dark Accent 1"/><w:lsdException w:name="List Table 6 Colorful Accent 1"/><w:lsdException w:name="List Table 7 Colorful Accent 1"/><w:lsdException w:name="List Table 1 Light Accent 2"/><w:lsdException w:name="List Table 2 Accent 2"/><w:lsdException w:name="List Table 3 Accent 2"/><w:lsdException w:name="List Table 4 Accent 2"/><w:lsdException w:name="List Table 5 Dark Accent 2"/><w:lsdException w:name="List Table 6 Colorful Accent 2"/><w:lsdException w:name="List Table 7 Colorful Accent 2"/><w:lsdException w:name="List Table 1 Light Accent 3"/><w:lsdException w:name="List Table 2 Accent 3"/><w:lsdException w:name="List Table 3 Accent 3"/><w:lsdException w:name="List Table 4 Accent 3"/><w:lsdException w:name="List Table 5 Dark Accent 3"/><w:lsdException w:name="List Table 6 Colorful Accent 3"/><w:lsdException w:name="List Table 7 Colorful Accent 3"/><w:lsdException w:name="List Table 1 Light Accent 4"/><w:lsdException w:name="List Table 2 Accent 4"/><w:lsdException w:name="List Table 3 Accent 4"/><w:lsdException w:name="List Table 4 Accent 4"/><w:lsdException w:name="List Table 5 Dark Accent 4"/><w:lsdException w:name="List Table 6 Colorful Accent 4"/><w:lsdException w:name="List Table 7 Colorful Accent 4"/><w:lsdException w:name="List Table 1 Light Accent 5"/><w:lsdException w:name="List Table 2 Accent 5"/><w:lsdException w:name="List Table 3 Accent 5"/><w:lsdException w:name="List Table 4 Accent 5"/><w:lsdException w:name="List Table 5 Dark Accent 5"/><w:lsdException w:name="List Table 6 Colorful Accent 5"/><w:lsdException w:name="List Table 7 Colorful Accent 5"/><w:lsdException w:name="List Table 1 Light Accent 6"/><w:lsdException w:name="List Table 2 Accent 6"/><w:lsdException w:name="List Table 3 Accent 6"/><w:lsdException w:name="List Table 4 Accent 6"/><w:lsdException w:name="List Table 5 Dark Accent 6"/><w:lsdException w:name="List Table 6 Colorful Accent 6"/><w:lsdException w:name="List Table 7 Colorful Accent 6"/></w:latentStyles><w:style w:type="paragraph" w:default="on" w:styleId="a"><w:name w:val="Normal"/><wx:uiName wx:val="正文"/><w:pPr><w:widowControl w:val="off"/><w:jc w:val="both"/></w:pPr><w:rPr><wx:font wx:val="Times New Roman"/><w:kern w:val="2"/><w:sz w:val="21"/><w:sz-cs w:val="24"/><w:lang w:val="EN-US" w:fareast="ZH-CN" w:bidi="AR-SA"/></w:rPr></w:style><w:style w:type="character" w:default="on" w:styleId="a0"><w:name w:val="Default Paragraph Font"/><wx:uiName wx:val="默认段落字体"/></w:style><w:style w:type="table" w:default="on" w:styleId="a1"><w:name w:val="Normal Table"/><wx:uiName wx:val="普通表格"/><w:rPr><wx:font wx:val="Times New Roman"/><w:lang w:val="EN-US" w:fareast="ZH-CN" w:bidi="AR-SA"/></w:rPr><w:tblPr><w:tblCellMar><w:top w:w="0" w:type="dxa"/><w:left w:w="108" w:type="dxa"/><w:bottom w:w="0" w:type="dxa"/><w:right w:w="108" w:type="dxa"/></w:tblCellMar></w:tblPr></w:style><w:style w:type="list" w:default="on" w:styleId="a2"><w:name w:val="No List"/><wx:uiName wx:val="无列表"/></w:style><w:style w:type="paragraph" w:styleId="a3"><w:name w:val="annotation text"/><wx:uiName wx:val="批注文字"/><w:basedOn w:val="a"/><w:link w:val="Char"/><w:pPr><w:jc w:val="left"/></w:pPr><w:rPr><wx:font wx:val="Times New Roman"/></w:rPr></w:style><w:style w:type="character" w:styleId="Char"><w:name w:val="批注文字 Char"/><w:link w:val="a3"/><w:rPr><w:kern w:val="2"/><w:sz w:val="21"/><w:sz-cs w:val="24"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="a4"><w:name w:val="Balloon Text"/><wx:uiName wx:val="批注框文本"/><w:basedOn w:val="a"/><w:link w:val="Char0"/><w:rPr><wx:font wx:val="Times New Roman"/><w:sz w:val="18"/><w:sz-cs w:val="18"/></w:rPr></w:style><w:style w:type="character" w:styleId="Char0"><w:name w:val="批注框文本 Char"/><w:link w:val="a4"/><w:rPr><w:kern w:val="2"/><w:sz w:val="18"/><w:sz-cs w:val="18"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="a5"><w:name w:val="footer"/><wx:uiName wx:val="页脚"/><w:basedOn w:val="a"/><w:link w:val="Char1"/><w:pPr><w:tabs><w:tab w:val="center" w:pos="4153"/><w:tab w:val="right" w:pos="8306"/></w:tabs><w:snapToGrid w:val="off"/><w:jc w:val="left"/></w:pPr><w:rPr><wx:font wx:val="Times New Roman"/><w:sz w:val="18"/><w:sz-cs w:val="18"/></w:rPr></w:style><w:style w:type="character" w:styleId="Char1"><w:name w:val="页脚 Char"/><w:link w:val="a5"/><w:rPr><w:kern w:val="2"/><w:sz w:val="18"/><w:sz-cs w:val="18"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="a6"><w:name w:val="header"/><wx:uiName wx:val="页眉"/><w:basedOn w:val="a"/><w:link w:val="Char2"/><w:pPr><w:pBdr><w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="1" w:color="auto"/></w:pBdr><w:tabs><w:tab w:val="center" w:pos="4153"/><w:tab w:val="right" w:pos="8306"/></w:tabs><w:snapToGrid w:val="off"/><w:jc w:val="center"/></w:pPr><w:rPr><wx:font wx:val="Times New Roman"/><w:sz w:val="18"/><w:sz-cs w:val="18"/></w:rPr></w:style><w:style w:type="character" w:styleId="Char2"><w:name w:val="页眉 Char"/><w:link w:val="a6"/><w:rPr><w:kern w:val="2"/><w:sz w:val="18"/><w:sz-cs w:val="18"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="a7"><w:name w:val="annotation subject"/><wx:uiName wx:val="批注主题"/><w:basedOn w:val="a3"/><w:next w:val="a3"/><w:link w:val="Char3"/><w:rPr><wx:font wx:val="Times New Roman"/><w:b/><w:b-cs/></w:rPr></w:style><w:style w:type="character" w:styleId="Char3"><w:name w:val="批注主题 Char"/><w:link w:val="a7"/><w:rPr><w:b/><w:b-cs/><w:kern w:val="2"/><w:sz w:val="21"/><w:sz-cs w:val="24"/></w:rPr></w:style><w:style w:type="table" w:styleId="a8"><w:name w:val="Table Grid"/><wx:uiName wx:val="网格型"/><w:basedOn w:val="a1"/><w:pPr><w:widowControl w:val="off"/><w:jc w:val="both"/></w:pPr><w:rPr><wx:font wx:val="Times New Roman"/></w:rPr><w:tblPr><w:tblBorders><w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/></w:tblBorders><w:tblCellMar><w:top w:w="0" w:type="dxa"/><w:left w:w="108" w:type="dxa"/><w:bottom w:w="0" w:type="dxa"/><w:right w:w="108" w:type="dxa"/></w:tblCellMar></w:tblPr></w:style><w:style w:type="character" w:styleId="a9"><w:name w:val="annotation reference"/><wx:uiName wx:val="批注引用"/><w:rPr><w:sz w:val="21"/><w:sz-cs w:val="21"/></w:rPr></w:style><w:style w:type="paragraph" w:styleId="aa"><w:name w:val="Revision"/><wx:uiName wx:val="修订"/><w:rPr><wx:font wx:val="Times New Roman"/><w:kern w:val="2"/><w:sz w:val="21"/><w:sz-cs w:val="24"/><w:lang w:val="EN-US" w:fareast="ZH-CN" w:bidi="AR-SA"/></w:rPr></w:style></w:styles><w:shapeDefaults><o:shapedefaults v:ext="edit" spidmax="1026"/><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1"/></o:shapelayout></w:shapeDefaults><w:docPr><w:view w:val="print"/><w:zoom w:percent="100"/><w:doNotEmbedSystemFonts/><w:bordersDontSurroundHeader/><w:bordersDontSurroundFooter/><w:stylePaneFormatFilter w:val="3F01"/><w:defaultTabStop w:val="420"/><w:drawingGridHorizontalSpacing w:val="105"/><w:drawingGridVerticalSpacing w:val="156"/><w:displayHorizontalDrawingGridEvery w:val="0"/><w:displayVerticalDrawingGridEvery w:val="2"/><w:punctuationKerning/><w:characterSpacingControl w:val="CompressPunctuation"/><w:webPageEncoding w:val="x-cp20936"/><w:optimizeForBrowser/><w:allowPNG/><w:validateAgainstSchema/><w:saveInvalidXML w:val="off"/><w:ignoreMixedContent w:val="off"/><w:alwaysShowPlaceholderText w:val="off"/><w:footnotePr><w:footnote w:type="separator"><w:p wsp:rsidR="00055A1B" wsp:rsidRDefault="00055A1B"><w:r><w:separator/></w:r></w:p></w:footnote><w:footnote w:type="continuation-separator"><w:p wsp:rsidR="00055A1B" wsp:rsidRDefault="00055A1B"><w:r><w:continuationSeparator/></w:r></w:p></w:footnote></w:footnotePr><w:endnotePr><w:endnote w:type="separator"><w:p wsp:rsidR="00055A1B" wsp:rsidRDefault="00055A1B"><w:r><w:separator/></w:r></w:p></w:endnote><w:endnote w:type="continuation-separator"><w:p wsp:rsidR="00055A1B" wsp:rsidRDefault="00055A1B"><w:r><w:continuationSeparator/></w:r></w:p></w:endnote></w:endnotePr><w:compat><w:spaceForUL/><w:balanceSingleByteDoubleByteWidth/><w:doNotLeaveBackslashAlone/><w:ulTrailSpace/><w:doNotExpandShiftReturn/><w:adjustLineHeightInTable/><w:breakWrappedTables/><w:snapToGridInCell/><w:wrapTextWithPunct/><w:useAsianBreakRules/><w:dontGrowAutofit/><w:useFELayout/></w:compat><w:docVars><w:docVar w:name="commondata" w:val="eyJoZGlkIjoiYTNkMzhhMWY0YTJmMWM4NTlhOWU1NjFlOGEwOTE3YTcifQ=="/></w:docVars><wsp:rsids><wsp:rsidRoot wsp:val="00AF3008"/><wsp:rsid wsp:val="0000084B"/><wsp:rsid wsp:val="000059D8"/><wsp:rsid wsp:val="00026449"/><wsp:rsid wsp:val="0004634F"/><wsp:rsid wsp:val="00046672"/><wsp:rsid wsp:val="00055A1B"/><wsp:rsid wsp:val="00081A7A"/><wsp:rsid wsp:val="00095082"/><wsp:rsid wsp:val="000C2E56"/><wsp:rsid wsp:val="000C7682"/><wsp:rsid wsp:val="000D0AF6"/><wsp:rsid wsp:val="0010671C"/><wsp:rsid wsp:val="00123E90"/><wsp:rsid wsp:val="001A0B2A"/><wsp:rsid wsp:val="001C333F"/><wsp:rsid wsp:val="002163D8"/><wsp:rsid wsp:val="00216C35"/><wsp:rsid wsp:val="00225EF3"/><wsp:rsid wsp:val="00232AEB"/><wsp:rsid wsp:val="002350BC"/><wsp:rsid wsp:val="00256A8A"/><wsp:rsid wsp:val="002E1007"/><wsp:rsid wsp:val="002E70F8"/><wsp:rsid wsp:val="0030770C"/><wsp:rsid wsp:val="0032384C"/><wsp:rsid wsp:val="00335B8C"/><wsp:rsid wsp:val="00354B9B"/><wsp:rsid wsp:val="00364B81"/><wsp:rsid wsp:val="003A270F"/><wsp:rsid wsp:val="003A5C07"/><wsp:rsid wsp:val="004114E7"/><wsp:rsid wsp:val="00461359"/><wsp:rsid wsp:val="004822E1"/><wsp:rsid wsp:val="00492BEB"/><wsp:rsid wsp:val="00493B00"/><wsp:rsid wsp:val="004F5F0B"/><wsp:rsid wsp:val="004F7A47"/><wsp:rsid wsp:val="0054187F"/><wsp:rsid wsp:val="005453CF"/><wsp:rsid wsp:val="0056031C"/><wsp:rsid wsp:val="0056679E"/><wsp:rsid wsp:val="00587232"/><wsp:rsid wsp:val="005C00D8"/><wsp:rsid wsp:val="005D1EA5"/><wsp:rsid wsp:val="005E1145"/><wsp:rsid wsp:val="00612D1D"/><wsp:rsid wsp:val="006140A4"/><wsp:rsid wsp:val="006477E0"/><wsp:rsid wsp:val="00657815"/><wsp:rsid wsp:val="006B71D6"/><wsp:rsid wsp:val="006F404B"/><wsp:rsid wsp:val="00763618"/><wsp:rsid wsp:val="0077579A"/><wsp:rsid wsp:val="00796BBD"/><wsp:rsid wsp:val="007B4A27"/><wsp:rsid wsp:val="007C4D0E"/><wsp:rsid wsp:val="007F0AA3"/><wsp:rsid wsp:val="00820E92"/><wsp:rsid wsp:val="008352A2"/><wsp:rsid wsp:val="00864E20"/><wsp:rsid wsp:val="0089087B"/><wsp:rsid wsp:val="0092681C"/><wsp:rsid wsp:val="00971865"/><wsp:rsid wsp:val="00991F56"/><wsp:rsid wsp:val="009A0CAC"/><wsp:rsid wsp:val="009B61C0"/><wsp:rsid wsp:val="009F7A85"/><wsp:rsid wsp:val="009F7B12"/><wsp:rsid wsp:val="00A0753B"/><wsp:rsid wsp:val="00A42B19"/><wsp:rsid wsp:val="00A5558B"/><wsp:rsid wsp:val="00A74817"/><wsp:rsid wsp:val="00A76156"/><wsp:rsid wsp:val="00A84575"/><wsp:rsid wsp:val="00A95908"/><wsp:rsid wsp:val="00AA37DB"/><wsp:rsid wsp:val="00AF3008"/><wsp:rsid wsp:val="00B14DEB"/><wsp:rsid wsp:val="00B35471"/><wsp:rsid wsp:val="00B37840"/><wsp:rsid wsp:val="00B46EBE"/><wsp:rsid wsp:val="00B63D62"/><wsp:rsid wsp:val="00B77B10"/><wsp:rsid wsp:val="00B85035"/><wsp:rsid wsp:val="00BA15CA"/><wsp:rsid wsp:val="00BC6D5A"/><wsp:rsid wsp:val="00BE6B19"/><wsp:rsid wsp:val="00C12D80"/><wsp:rsid wsp:val="00C95FE3"/><wsp:rsid wsp:val="00D35394"/><wsp:rsid wsp:val="00D37617"/><wsp:rsid wsp:val="00D4756A"/><wsp:rsid wsp:val="00DB4D3D"/><wsp:rsid wsp:val="00DE0F6A"/><wsp:rsid wsp:val="00E4114F"/><wsp:rsid wsp:val="00E6581B"/><wsp:rsid wsp:val="00E81025"/><wsp:rsid wsp:val="00E82B6A"/><wsp:rsid wsp:val="00ED528F"/><wsp:rsid wsp:val="00EE48D4"/><wsp:rsid wsp:val="00F969FB"/><wsp:rsid wsp:val="00FA74E0"/><wsp:rsid wsp:val="00FC607C"/><wsp:rsid wsp:val="00FC7090"/><wsp:rsid wsp:val="00FD3339"/><wsp:rsid wsp:val="00FE616B"/><wsp:rsid wsp:val="00FE68DF"/><wsp:rsid wsp:val="0B8D2152"/><wsp:rsid wsp:val="337F10FF"/></wsp:rsids></w:docPr><w:body><wx:sect><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体"/><wx:font wx:val="黑体"/><w:b/><w:sz w:val="36"/><w:sz-cs w:val="36"/></w:rPr></w:pPr><#if title??><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:b/><w:sz w:val="36"/><w:sz-cs w:val="36"/></w:rPr><w:t>${title}</w:t></w:r></#if></w:p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:b/><w:sz-cs w:val="21"/></w:rPr></w:pPr></w:p><w:tbl><w:tblPr><w:tblW w:w="0" w:type="auto"/><w:jc w:val="center"/><w:tblInd w:w="0" w:type="dxa"/><w:tblBorders><w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/><w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/></w:tblBorders><w:tblLayout w:type="Fixed"/></w:tblPr><w:tblGrid><w:gridCol w:w="698"/><w:gridCol w:w="781"/><w:gridCol w:w="1298"/><w:gridCol w:w="2600"/><w:gridCol w:w="852"/><w:gridCol w:w="919"/><w:gridCol w:w="1481"/><w:gridCol w:w="662"/><w:gridCol w:w="1938"/><w:gridCol w:w="908"/><w:gridCol w:w="779"/><w:gridCol w:w="1766"/></w:tblGrid><w:tr wsp:rsidR="00000000"><w:trPr><w:trHeight w:val="491"/><w:jc w:val="center"/></w:trPr><w:tc><w:tcPr><w:tcW w:w="1479" w:type="dxa"/><w:gridSpan w:val="2"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>企业名称</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="5669" w:type="dxa"/><#if comAddress??><w:gridSpan w:val="4"/><#else><w:gridSpan w:val="10"/></#if></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${comName?if_exists}</w:t></w:r></w:p></w:tc><#if comAddress??><w:tc><w:tcPr><w:tcW w:w="1481" w:type="dxa"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>地址</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="6053" w:type="dxa"/><w:gridSpan w:val="5"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="left"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${comAddress?if_exists}</w:t></w:r></w:p></w:tc></#if></w:tr><#if serverUserName?? || serverUserPhone?? || checkTime??><w:tr wsp:rsidR="00000000"><w:trPr><w:trHeight w:val="491"/><w:jc w:val="center"/></w:trPr><#if serverUserName??><w:tc><w:tcPr><w:tcW w:w="1479" w:type="dxa"/><w:gridSpan w:val="2"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>服务人员</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="3898" w:type="dxa"/><#if serverUserPhone?? && checkTime??><w:gridSpan w:val="2"/><#elseif serverUserPhone?exists && !(checkTime?exists)><w:gridSpan w:val="2"/><#elseif !(serverUserPhone?exists) && !(checkTime?exists)><w:gridSpan w:val="10"/><#else><w:gridSpan w:val="2"/></#if></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${serverUserName?if_exists}</w:t></w:r></w:p></w:tc></#if><#if serverUserPhone??><w:tc><w:tcPr><w:tcW w:w="1771" w:type="dxa"/><w:gridSpan w:val="2"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>联系方式</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="2143" w:type="dxa"/><#if serverUserName?? && checkTime??><w:gridSpan w:val="2"/><#elseif serverUserName?exists && !(checkTime?exists)><w:gridSpan w:val="2"/><#elseif !(serverUserPhone?exists) && !(checkTime?exists)><w:gridSpan w:val="10"/><#else><w:gridSpan w:val="2"/></#if></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${serverUserPhone?if_exists}</w:t></w:r></w:p></w:tc></#if><#if checkTime??><w:tc><w:tcPr><w:tcW w:w="1938" w:type="dxa"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>排查统计期间</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="3453" w:type="dxa"/><#if serverUserName?? && serverUserPhone??><w:gridSpan w:val="3"/><#elseif serverUserName?exists && !(serverUserPhone?exists)><w:gridSpan w:val="7"/><#elseif !(serverUserName?exists) && !(serverUserPhone?exists)><w:gridSpan w:val="11"/><#else><w:gridSpan w:val="3"/></#if></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${checkTime?if_exists}</w:t></w:r></w:p></w:tc></#if></w:tr></#if><#if memo??><w:tr wsp:rsidR="00000000"><w:trPr><w:trHeight w:val="491"/><w:jc w:val="center"/></w:trPr><w:tc><w:tcPr><w:tcW w:w="14682" w:type="dxa"/><w:gridSpan w:val="12"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="left"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${memo?if_exists}</w:t></w:r></w:p></w:tc></w:tr></#if><w:tr wsp:rsidR="00000000"><w:trPr><w:trHeight w:val="491"/><w:jc w:val="center"/></w:trPr><w:tc><w:tcPr><w:tcW w:w="698" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>序号</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="2079" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>隐患照片</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="3452" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>隐患描述</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="2400" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>整改照片</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="2600" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>整改描述</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="908" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>隐患</w:t></w:r></w:p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>类型</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="779" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>隐患</w:t></w:r></w:p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>等级</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="1766" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>整改</w:t></w:r></w:p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="黑体" w:fareast="黑体" w:h-ansi="黑体" w:hint="fareast"/><wx:font wx:val="黑体"/><w:sz w:val="24"/></w:rPr><w:t>日期</w:t></w:r></w:p></w:tc></w:tr><#if hiddens??><#list hiddens as h><w:tr wsp:rsidR="00000000"><w:trPr><w:trHeight w:val="491"/><w:jc w:val="center"/></w:trPr><w:tc><w:tcPr><w:tcW w:w="698" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${h.no?if_exists}</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="2079" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><#if h.pics??><#list h.pics as p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:pict><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><v:stroke joinstyle="miter"/><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"/><v:f eqn="sum @0 1 0"/><v:f eqn="sum 0 0 @1"/><v:f eqn="prod @2 1 2"/><v:f eqn="prod @3 21600 pixelWidth"/><v:f eqn="prod @3 21600 pixelHeight"/><v:f eqn="sum @0 0 1"/><v:f eqn="prod @6 1 2"/><v:f eqn="prod @7 21600 pixelWidth"/><v:f eqn="sum @8 21600 0"/><v:f eqn="prod @7 21600 pixelHeight"/><v:f eqn="sum @10 21600 0"/></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/><o:lock v:ext="edit" aspectratio="t"/></v:shapetype><v:shape id="图片 3" o:spid="_x0000_i1025" type="#_x0000_t75" alt="" style="width:96.75pt;height:96pt"><v:fill o:detectmouseclick="t"/><w:binData w:name="${"wordml://"+(h_index+p_index)+".jpg"}" xml:space="preserve">${p.base64Str?if_exists}</w:binData><v:imagedata src="${"wordml://"+(h_index+p_index)+".jpg"}" o:title=""/></v:shape></w:pict></w:r></w:p></#list></#if></w:tc><w:tc><w:tcPr><w:tcW w:w="3452" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${h.hiddenDescribe?if_exists}</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="2400" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><#if h.pics2??><#list h.pics2 as p2><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:pict><w:binData w:name="${"wordml://2"+(h_index+p2_index)+".jpg"}" xml:space="preserve">${p2.base64Str?if_exists}</w:binData><v:shape id="图片 2" o:spid="_x0000_i1026" type="#_x0000_t75" style="width:96pt;height:96.75pt;mso-wrap-style:square;mso-position-horizontal-relative:page;mso-position-vertical-relative:page"><v:imagedata src="${"wordml://2"+(h_index+p2_index)+".jpg"}" o:title=""/></v:shape></w:pict></w:r></w:p></#list></#if></w:tc><w:tc><w:tcPr><w:tcW w:w="2600" w:type="dxa"/><w:gridSpan w:val="2"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${h.reformDescribe?if_exists}</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="908" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${h.hiddenType?if_exists}</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="779" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${h.hiddenLevel?if_exists}</w:t></w:r></w:p></w:tc><w:tc><w:tcPr><w:tcW w:w="1766" w:type="dxa"/><w:vAlign w:val="center"/></w:tcPr><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="center"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${h.reformDate?if_exists}</w:t></w:r></w:p></w:tc></w:tr></#list></#if></w:tbl><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="8820"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="right"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr></w:p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="8820"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:jc w:val="right"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr></w:p><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="9450"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:ind w:right="1200"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:tab/></w:r><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${unitName?if_exists}</w:t></w:r></w:p><w:p wsp:rsidR="00055A1B" wsp:rsidRDefault="00055A1B"><w:pPr><w:tabs><w:tab w:val="left" w:pos="10176"/></w:tabs><w:spacing w:line="360" w:line-rule="auto"/><w:ind w:right="1200"/><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:tab/></w:r><w:r><w:rPr><w:rFonts w:ascii="宋体" w:h-ansi="宋体" w:hint="fareast"/><wx:font wx:val="宋体"/><w:sz w:val="24"/></w:rPr><w:t>${reportDate?if_exists}</w:t></w:r></w:p><w:sectPr wsp:rsidR="00055A1B"><w:ftr w:type="odd"><w:p wsp:rsidR="00000000" wsp:rsidRDefault="00055A1B"><w:pPr><w:pStyle w:val="a5"/><w:jc w:val="center"/></w:pPr><w:r><w:fldChar w:fldCharType="begin"/></w:r><w:r><w:instrText>PAGE \* MERGEFO</w:instrText></w:r><w:r><w:instrText>RMAT</w:instrText></w:r><w:r><w:fldChar w:fldCharType="separate"/></w:r><w:r wsp:rsidR="00763618" wsp:rsidRPr="00763618"><w:rPr><w:noProof/><w:lang w:val="ZH-CN" w:fareast="ZH-CN"/></w:rPr><w:t>1</w:t></w:r><w:r><w:fldChar w:fldCharType="end"/></w:r></w:p></w:ftr><w:pgSz w:w="16838" w:h="11906" w:orient="landscape"/><w:pgMar w:top="851" w:right="851" w:bottom="851" w:left="851" w:header="851" w:footer="709" w:gutter="0"/><w:cols w:space="720"/><w:docGrid w:type="lines" w:line-pitch="312"/></w:sectPr></wx:sect></w:body></w:wordDocument>

相关maven依赖

<!--ftl生成xml--><dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.31</version></dependency>

工具类

import java.io.*;import java.util.*;import cn.hutool.core.io.FileUtil;import mon.utils.DateUtils;import anization.vo.*;import freemarker.template.*;import mons.io.FilenameUtils;import mons.io.IOUtils;import org.apache.poi.hwpf.HWPFDocument;import org.apache.poi.hwpf.usermodel.Range;import org.apache.poi.poifs.filesystem.*;public class WordExport {public static void main(String[] args) throws Exception {exportModel4();}public static void exportModel4() throws Exception {// 准备模板数据Map<String, Object> context = new HashMap<>();context.put("title", "隐患排查记录汇总表");context.put("comName", "张三企业");// context.put("comAddress", "杭州上城红街公寓"); // 这里是我控制展示和隐藏的测试操作context.put("checkTime", "-02~-06");context.put("serverUserName", "里斯");context.put("serverUserPhone", "15511225566");context.put("memo","本期检查发现2个隐患,已整改2个,具体如下:");List<FTLWordPicVo> picList = new ArrayList<>();FTLWordPicVo ftlWordPicVo1 = new FTLWordPicVo();ftlWordPicVo1.setId(11);ftlWordPicVo1.setRId("11");String filePath = "F:\\test_path\\xdoc\\1.jpeg";File f = new File("F:\\test_path\\xdoc\\1.jpeg");ftlWordPicVo1.setPicType("wordml://"+ftlWordPicVo1.getId()+"."+FilenameUtils.getExtension(filePath));BufferedInputStream in1 = FileUtil.getInputStream("F:\\test_path\\xdoc\\1.jpeg");ftlWordPicVo1.setBase64Str(FileToBase64(in1));picList.add(ftlWordPicVo1);String filePath2 = "F:\\test_path\\xdoc\\2.jpeg";FTLWordPicVo ftlWordPicVo2 = new FTLWordPicVo();ftlWordPicVo2.setId(12);ftlWordPicVo2.setRId("rId100"+"2");ftlWordPicVo2.setPicType("wordml://"+ftlWordPicVo2.getId()+"."+FilenameUtils.getExtension(filePath2));BufferedInputStream in2 = FileUtil.getInputStream("F:\\test_path\\xdoc\\2.jpeg");ftlWordPicVo2.setBase64Str(FileToBase64(in2));picList.add(ftlWordPicVo2);List<FTLWordPicVo> picList2 = new ArrayList<>();FTLWordPicVo ftlWordPicVo3 = new FTLWordPicVo();ftlWordPicVo3.setId(13);ftlWordPicVo3.setRId("rId100"+"3");ftlWordPicVo3.setPicType("wordml://"+ftlWordPicVo3.getId()+"."+FilenameUtils.getExtension(filePath));BufferedInputStream in3 = FileUtil.getInputStream("F:\\test_path\\xdoc\\1.jpeg");ftlWordPicVo3.setBase64Str(FileToBase64(in3));picList2.add(ftlWordPicVo3);FTLWordPicVo ftlWordPicVo4 = new FTLWordPicVo();ftlWordPicVo4.setId(14);ftlWordPicVo4.setRId("rId100"+"4");ftlWordPicVo4.setPicType("wordml://"+ftlWordPicVo4.getId()+"."+FilenameUtils.getExtension(filePath2));BufferedInputStream in4 = FileUtil.getInputStream("F:\\test_path\\xdoc\\2.jpeg");ftlWordPicVo4.setBase64Str(FileToBase64(in4));picList2.add(ftlWordPicVo4);List<FTLModelFourHiddenVo> list = new ArrayList<>();FTLModelFourHiddenVo checkReportExportVo = new FTLModelFourHiddenVo(1,"线路老化产生火灾","已整改1","火灾","一般","-04-12",picList,picList);list.add(checkReportExportVo);FTLModelFourHiddenVo checkReportExportVo2 = new FTLModelFourHiddenVo(2,"线路老化产生火灾2","已整改2","火灾","重大","-04-12",picList2,picList2);list.add(checkReportExportVo2);context.put("hiddens",list);context.put("unitName","金华市明势企业管理咨询有限公司");context.put("reportDate","二〇二三年四月五日");// 获取FreeMarker配置Configuration cfg = new Configuration(Configuration.VERSION_2_3_31);cfg.setDefaultEncoding("UTF-8");//.xml 模板文件所在目录// cfg.setClassForTemplateLoading(WordExport.class, "/templates/");cfg.setDirectoryForTemplateLoading(new File("F:\\test_path\\model\\one\\"));// 这个是我本地的地址路径// 加载模板 以utf-8的编码读取模板文件Template template = cfg.getTemplate("model4.ftl","utf-8");// 输出文档路径及名称String dateStr = DateUtils.dateTimeNow();File outFile = new File("F:\\test_path\\model\\four\\word\\" +dateStr+"testModel4.doc");Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "utf-8"),10240);template.process(context, out);String content = out.toString();out.close();System.out.println("生成成功");}// 获取文件流// BufferedInputStream in1 = FileUtil.getInputStream("D:/scan/test2_result.png");/*** 文件流转base64* @param in* @return* @throws IOException*/public static String FileToBase64(InputStream in) throws IOException {byte[] bytes = IOUtils.toByteArray(in);String encoded = Base64.getEncoder().encodeToString(bytes);return encoded;}}

自定义实体补充

import lombok.Data;// 图片@Datapublic class FTLWordPicVo {// 图片IDprivate Integer id;// 图片rIdprivate String rId;// 图片类型名称private String typeName;private String picType;private String base64Str;}

import lombok.Data;import java.util.List;// 隐患信息@Datapublic class FTLModelFourHiddenVo {private Integer no;// 序号private String hiddenDescribe;// 隐患描述private String reformDescribe;// 整改描述private String hiddenType;// 隐患类型private String hiddenLevel;// 隐患等级 一般 重大private String reformDate;// 整改日期private List<FTLWordPicVo> pics;// 隐患照片private List<FTLWordPicVo> pics2;// 整改照片public FTLModelFourHiddenVo(Integer no,String hiddenDescribe,String reformDescribe,String hiddenType,String hiddenLevel,String reformDate,List<FTLWordPicVo> hiddenPics,List<FTLWordPicVo> reformPics) {this.no = no;this.hiddenDescribe = hiddenDescribe;this.reformDescribe = reformDescribe;this.hiddenType = hiddenType;this.hiddenLevel = hiddenLevel;this.reformDate = reformDate;this.pics = hiddenPics;this.pics2 = reformPics;}}

生成展示,第一行我做了一个合并单元格

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。