FreeMarker给word文档里生成多个柱状图(数据可修改)
项目场景:
上个博客生成了一个静态的柱状图 也就是将柱状图的图片放到word里,这个博客说说 ftl文件里给他设置数据动态
1创建.docx文档模板:
类似于这样的模板
2.生成xml在线解析格式然后转ftl:
类似于这样
它里面会有这样几个标签
<Relationship Id="rId12" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart" Target="charts/chart1.xml"/><Relationship Id="rId13" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml" Target="../customXml/item2.xml"/>
这两个标签的id 和 Target的值都是可以改变的 ,然后找到它Target 对应的xml文件
比如这样
这两个name值也都是可以变的 当然 对应着这个xml的标签也要变
/word/charts/_rels/chart1.xml.rels 它里面放的应该是柱状图的结构 就是这三个标签对应的Target 不要删除 <Relationship Id="rId16" Type="http://schemas.microsoft.com/office/2011/relationships/chartColorStyle" Target="colors1.xml"/> <Relationship Id="rId15" Type="http://schemas.microsoft.com/office/2011/relationships/chartStyle" Target="style1.xml"/> <Relationship Id="rId14" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/package" Target="../embeddings/Workbook1.xlsx"/>
/word/charts/chart1.xml 它里面放的应该是 柱状图的的数据 就是那根柱子的高低
它里面的标签就是柱状图的数据 例如下图
改动这些数据就可以改动柱状图的数据了
接下来就是去找柱状图放的位置了
<w:body>这个标签里 去找
<w:p><w:pPr><w:pStyle w:val="2"/><w:numPr><w:ilvl w:val="0"/><w:numId w:val="2"/></w:numPr></w:pPr><w:r><w:rPr><w:rFonts w:hint="eastAsia"/><w:lang w:val="en-US" w:eastAsia="zh-CN"/></w:rPr><w:t>柱状图lwh</w:t></w:r> </w:p> <w:p><w:bookmarkStart w:id="0" w:name="_GoBack"/><w:r><w:drawing><wp:inline distT="0" distB="0" distL="114300" distR="114300"><wp:extent cx="5080000" cy="3810000"/><wp:effectExtent l="4445" t="4445" r="20955" b="14605"/><wp:docPr id="1" name="图表 1"/><wp:cNvGraphicFramePr/><a:graphicxmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"><a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/chart"><c:chartxmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart"xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" r:id="rId12"/></a:graphicData></a:graphic></wp:inline></w:drawing></w:r><w:bookmarkEnd w:id="0"/> </w:p>
这里就是放柱状图的位置 它里面会引用上面的pkg标签 也就是柱状图的xml 例如下图
一定要对应最上面那个pkg的id
这样 ftl就改好了
传多个柱状图:
多个柱状图就写个list在那个标签上让他循环 循环的时候要给他唯一标识 否则柱状图都一样
例如下图
然后就是循环柱状图里的数据
如果对您有帮助 请 点赞 转发 ,谢谢 最后生成 就这样
FreeMarker给word文档里生成多个柱状图(数据可修改)相关推荐
- 使用FreeMarker给word文档里生成柱状图
学习目标: 使用FreeMarker给word文档里生成柱状图 1制作ftl文件: 1.先创建个空白的word文档 然后插入柱状图 2.另存为xml文件 打开后是这样 3.百度搜索 XML 在线格式化 ...
- freemarker实现word文档模板动态生成
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第29天,点击查看活动详情 1.写在前面 很多时候,我们可能需要根据一个word模板,动态生成,我们所需要得一个word文档. 那这 ...
- freemarker导出Word文档并在其中插入图片
先将word转成xml格式,再用notepad将其转为ftl格式(将要填入数据的地方加个占位符,${name}) import java.io.File; import java.io.FileInp ...
- C# 在Word文档中生成条形码
C# 在Word文档中生成条形码 简介 条形码是由多个不同的空白和黑条按照一定的顺序组成,用于表示各种信息如产品名称.制造商.类别.价格等.目前,条形码在我们的日常生活中有着很广泛的应用,不管是在图书 ...
- 使用freemarker导出word文档包含多张图片
使用freemarker导出word文档包含多张图片 最近项目中有个需求就是导出word文档并且文档中需要有多张图片,我当时一脸懵逼啊,之前没有搞过这个啊,但是不要灰心,肯定会有很多人搞过的,百度一下 ...
- Java读取word文档里的复杂型表格(任免表)
使用apache-poi读取word文档里的复杂型表格 这里使用的任免表编辑器产生的word文档. word模板:https://download.csdn.net/download/weixin_4 ...
- freemarker 制作word文档docx案例
主要用于生成特定word文档,需要替换docx中的文字,书签,图片,动态表格等 本文以生成docx为例,doc文件目前有一些问题 例如图片或模板不好处理等,暂不考虑. 思路: 1)熟悉docx文件的结 ...
- word文档里怎么嵌入文档_如何在Microsoft Word文档中嵌入字体
word文档里怎么嵌入文档 When you email someone a copy of your Word document or PowerPoint presentation and the ...
- 在word文档里提取出所有的邮箱地址
怎样在word文档里提取出所有的邮箱地址 文档内容太多,邮箱也有很多,一个个复制粘贴太浪费时间,怎样把这些邮箱简单的提取出来 答案:用查找功能. 查找目标:[A-z,0-9]{1,}\@[A ...
最新文章
- 在桌面右键菜单,停止工作,并提示“资源管理器停止工作”等情况。
- apiCloud中api.ajax方法跨域传参获取数据
- 724 Find Pivot Index
- 最佳网页宽度及其实现
- mysql还是mdb2_mysql两种表存储结构myisam和innodb的性能比较测试
- linux电脑合盖后卡住了,解决ubuntu合盖后无法唤醒
- java中什么泛型_Java中的泛型
- azure api 管理_Azure Cosmos DB和MongoDB API入门
- sql重复数据只保留一条_一条SQL完成跨数据库实例Join查询
- AngularJs自定义指令的详解
- illustrative visualization思考
- Cron 表达式解析,crontab表达式解析
- linux系统重装win10系统不用u盘,win10不用u盘怎么重装系统
- python123随机密码生成器_一个随机密码生成器
- 嵌入式硬件常见英文总结
- 解决VBE6EXT.OLB不能被加载问题
- 用python计算圆周率
- 计算机风景画作品,电脑风景画图片
- 图像颜色空间转换--RGB to Lαβ
- 超级码力在线编程大赛初赛 第3场 1.最大公倍数