Python通过word模板生成word表格(含写入表格和图片)(不废话上代码系列)
话不多说,直接上图!!!(先图后代码,越看越清楚)
模板文件:
生成文件:
完整代码:
import jinja2
from docxtpl import DocxTemplate
from docxtpl import InlineImage
from docx.shared import Mm, Inches, Pttpl = DocxTemplate('template.docx')
context = {'user_name': '小明','user_sex': '男','username': '123456','user_birth': '2000年11月','user_phone': '123456','user_email': '177@qq.com','user_birthplace': '山西','user_unit': '13班','user_photo': InlineImage(tpl, '01.jpg',width=Mm(40),height=Mm(56)),'app_list': [{'app_name': '奖学金', 'app_data': '2020年11月'}, {'app_name': '荣誉证书', 'app_data': '2020年1月'}]}
jinja_env = jinja2.Environment(autoescape=True)
tpl.render(context, jinja_env)
tpl.save('template1.docx')
代码讲解:
docxtpl库
用来对word文件进行操作,可以生成表格,生成文本内容,相当强大。而 DocxTemplate模块用于通过模版生成文件,只需体验5分钟,即可让人爱上这个模块!!!
那么,我们为什么可以放入图片呢?那就和InlineImage模块有关系啦,通过InlineImage对象我们可以将图片变成可识别内容,然后就可以成功插入。
文档地址:https://docxtpl.readthedocs.io/en/latest/
jinja2
这个库,和django模板系统类似,学Django的都知道。不过没学过也无妨,上面的链接有相关的说明。
不喜欢读英文的???来这里:https://www.w3cschool.cn/yshfid/
常见问题:
相对路径问题:
如果是不在当前目录,使用../
可能会报错,可以使用:
sys.path[0]+文件名
可以尝试print(sys.path[0])
来确定文件名怎么写
Python通过word模板生成word表格(含写入表格和图片)(不废话上代码系列)相关推荐
- C#根据word模板生成word表格报表文档
主要功能为根据word模板生成word报表文档,注意引用Interop.Word.dll; 首先要生成word程序对象 Word.Application app = new Word.Applicat ...
- 使用word模板生成word文档的各类方案
使用word模板生成word文档的各类方案 生成word的各种方案 word另存xml进行后续处理 2003版本word(.doc)的xml处理并生成word 2007版本word(.docx)的xm ...
- 使用java Apache poi 根据word模板生成word报表
使用java Apache poi 根据word模板生成word报表 使用poi读取word模板,替换word中的{text}标签,并根据自定义标签循环生成表格或表格中的行. 代码示例下载:https ...
- PHP 使用word模板生成word文档示例
<?php namespace Home\Controller; use PhpOffice\PhpWord\TemplateProcessor; use Think\Controller; c ...
- 根据word模板生成word和PDF
根据word模板生成word和PDF 需求:有一个固定的合同模板,在vue前台填写指定的信息,替换合同模板指定的内容 我们使用的默认模板内容如图: 我们在前端填写的字段就是合同名称.项目名称和项目金额 ...
- java 根据word模板生成word文件
Java可以使用Apache POI库来生成Word文件,并且也可以使用freemarker等模板引擎来实现根据Word模板生成Word文件的功能. 下面是一个简单的示例代码,可以帮助您快速入门. 模 ...
- word模板生成word报表文档
主要功能为根据word模板生成word报表文档,注意引用Interop.Word.dll; 首先要生成word程序对象 Word.Application app = new Word.Applicat ...
- apache poi使用例_使用java Apache poi 根据word模板生成word报表例子
[实例简介] 使用java Apache poi 根据word模板生成word报表 仅支持docx格式的word文件,大概是word2010及以后版本,doc格式不支持. 使用说明:https://b ...
- JAVA实现模板word文档导入,Java依据word模板生成word文档之后台解析和实现及部分代码(一)...
Java根据word模板生成word文档之后台解析和实现及部分代码(一) 后台主要工作是解析XML定义的标签文件,并获取到数据集,放入到Map中,然后调用Jacob.jar中提供的相关方法来实现替换. ...
- 根据标准word模板生成word文档类库(开源)
前言 最近因项目需要要自定义标准word模板,并以编码方式操作word模板.填充数据和生成word文档,于是自己写了条小"内裤"来实现这个功能.该"内裤"只 ...
最新文章
- 在IE7中无效的解决办法
- 西安理工大学计算机专业毕业,西安理工大学什么专业好找工作?毕业工资大概多少?答案在这里...
- Spring.net的一个小例子
- 电脑键盘下划线怎么打_图文详解笔记本电脑键盘失灵怎么办
- Mean Shift算法(2)在OpenCV上的实现目标跟踪——直方图反向投影
- Python 绘制探地雷达堆叠波形图
- mysql配置优化ya_mysql性能调优工具之mytop
- JEPLUS表格高级展示——JEPLUS软件快速开发平台
- 手摸手教你git配置ssh
- 计算机博弈军旗程序,军棋机器人UCT算法及计算机博弈行为研究
- Android之复合按钮CompoundButton
- 蚂蚁金服提前批实习面经(2.26)
- 阿里总结的《Java成神之路》 PDF 火了,完整版开放下载!
- 网易免费的企业邮箱smtp的地址
- MySQL数据库删除大量数据的方式
- 微信公众平台开发(56)优惠券
- 七日杀Liunx SteamCMD开服超详细教程及服务器配置需求
- 哈密瓜水果的文案,水果哈密瓜文案高级感
- fbx sdk android,FBX SDK环境配置
- js如何实现数组数据的上移下移