Freemarker导出word文档 的一些问题

随声附和 提交于 2019-12-20 11:46:49

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

我被图片换行问题给难了好一会儿,我没想到在word中,两个图片标签本身就自带了换行功能,如果要想使图片不换行的话,需要将两个图片放在一个w:p标签中。
明白这一点之前,我花了不少时间去找所谓的换行符,通过beyond compare各种对比不同效果、换行与不换行的图片之间的区别。
这次耐心还是挺足的,不然估计的花更多的时间才能找到答案。
这次要赖自己的英语水平了——通过文档对比其实我早就注意到包含【GoBack】关键字的【w:bookmarkStart】标签了,但我却把它错误理解成了换行符……甚至还在想,为啥我把换行符去掉之后,怎么这个换行标签就从xml中出现了呢……哈哈,现在想来自己真是太可笑。
我要是英语再好一点的话,应该早就意识到,哦,原来两个图片标签本身就自带换行效果,如果想要不换行的话,需要将其写在同一个w:p标签中,并且用被我南辕北辙的误解为换行符的【不换行符】来实现这个效果。
一个好消息是,我已经持续学习英语一个月了,并且会继续坚持一下去。

<w:p w:rsidR="00A644D4" w:rsidRDefault="003E49CE" w:rsidP="001D19BC">
                        <w:r>
                            <w:rPr>
                                <w:noProof/>
                            </w:rPr>
                            <w:drawing>
                                <wp:inline distT="0" distB="0" distL="0" distR="0">
                                    <wp:extent cx="3105150" cy="1800225"/>
                                    <wp:effectExtent l="0" t="0" r="0" b="9525"/>
                                    <wp:docPr id="1" name="图片 1"/>
                                    <wp:cNvGraphicFramePr>
                                        <a:graphicFrameLocks noChangeAspect="1"
                                                             xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
                                    </wp:cNvGraphicFramePr>
                                    <a:graphic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
                                        <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">
                                            <pic:pic
                                                    xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture">
                                                <pic:nvPicPr>
                                                    <pic:cNvPr id="1" name="char1.png"/>
                                                    <pic:cNvPicPr/>
                                                </pic:nvPicPr>
                                                <pic:blipFill>
                                                    <a:blip r:embed="rId6">
                                                        <a:extLst>
                                                            <a:ext uri="{28A0092B-C50C-407E-A947-70E740481C1C}">
                                                                <a14:useLocalDpi val="0"
                                                                                 xmlns:a14="http://schemas.microsoft.com/office/drawing/2010/main"/>
                                                            </a:ext>
                                                        </a:extLst>
                                                    </a:blip>
                                                    <a:stretch>
                                                        <a:fillRect/>
                                                    </a:stretch>
                                                </pic:blipFill>
                                                <pic:spPr>
                                                    <a:xfrm>
                                                        <a:off x="0" y="0"/>
                                                        <a:ext cx="3105150" cy="1800225"/>
                                                    </a:xfrm>
                                                    <a:prstGeom prst="rect">
                                                        <a:avLst/>
                                                    </a:prstGeom>
                                                </pic:spPr>
                                            </pic:pic>
                                        </a:graphicData>
                                    </a:graphic>
                                </wp:inline>
                            </w:drawing>
                        </w:r>
                        <w:bookmarkStart w:id="0" w:name="_GoBack"/>
                        <w:bookmarkEnd w:id="0"/>
                        <w:r w:rsidR="00A644D4">
                            <w:rPr>
                                <w:rFonts w:hint="eastAsia"/>
                                <w:noProof/>
                            </w:rPr>
                            <w:drawing>
                                <wp:inline distT="0" distB="0" distL="0" distR="0">
                                    <wp:extent cx="3105150" cy="1800225"/>
                                    <wp:effectExtent l="0" t="0" r="0" b="9525"/>
                                    <wp:docPr id="2" name="图片 2"/>
                                    <wp:cNvGraphicFramePr>
                                        <a:graphicFrameLocks noChangeAspect="1"
                                                             xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
                                    </wp:cNvGraphicFramePr>
                                    <a:graphic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">
                                        <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">
                                            <pic:pic
                                                    xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture">
                                                <pic:nvPicPr>
                                                    <pic:cNvPr id="2" name="char1.png"/>
                                                    <pic:cNvPicPr/>
                                                </pic:nvPicPr>
                                                <pic:blipFill>
                                                    <a:blip r:embed="rId9">
                                                        <a:extLst>
                                                            <a:ext uri="{28A0092B-C50C-407E-A947-70E740481C1C}">
                                                                <a14:useLocalDpi val="0"
                                                                                 xmlns:a14="http://schemas.microsoft.com/office/drawing/2010/main"/>
                                                            </a:ext>
                                                        </a:extLst>
                                                    </a:blip>
                                                    <a:stretch>
                                                        <a:fillRect/>
                                                    </a:stretch>
                                                </pic:blipFill>
                                                <pic:spPr>
                                                    <a:xfrm>
                                                        <a:off x="0" y="0"/>
                                                        <a:ext cx="3105150" cy="1800225"/>
                                                    </a:xfrm>
                                                    <a:prstGeom prst="rect">
                                                        <a:avLst/>
                                                    </a:prstGeom>
                                                </pic:spPr>
                                            </pic:pic>
                                        </a:graphicData>
                                    </a:graphic>
                                </wp:inline>
                            </w:drawing>
                        </w:r>
                    </w:p>

影响图片大小的关键代码(通过文档对比发现的)

<wp:extent cx="3105150" cy="1800225"/>
                                    <wp:effectExtent l="0" t="0" r="0" b="9525"/>
……
<a:ext cx="3105150" cy="1800225"/>

以及集合遍历关键字

<#list list as fillRate >
这里是需要循环的标签
调用当前遍历元素为${fillRate.xxx}
顺便说一下,freemarker支持嵌套循环,也就是允许我们在list中写list
</#list>

判断对象是否存在(null或者为空)

<if 对象??>
不为空就会执行这里面
</if>
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!