本文主要是介绍python-docx-template 的 Replace docx pictures 占位图片名称从哪来?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
python-docx-template 的 Replace docx pictures 占位图片名称从哪来?
- 在 Word 中看占位图片名称
- 用代码输出
- 输出结果找对应图片
- 使用 replace_pic
- 参考资料
在 Word 中看占位图片名称
右键图片 》查看可选文字
用代码输出
from docxtpl import DocxTemplate# 初始化DocxTemplate类的对象,用于后续的模板渲染
# 参数为模板文件的路径
tpl = DocxTemplate('../../test_tpl.docx')# 创建一个空字典,用于存储模板渲染时所需的上下文数据
context = {}# 使用上下文数据渲染模板
# 这里的render方法会根据context中的数据替换模板中对应的部分
tpl.render(context)# 使用xpath方法查找docx文件中所有图片的属性
# 图片的属性存储在pic:cNvPr节点中
pic_attrib_list = [pic.attrib for pic in tpl.docx.element.xpath(".//pic:cNvPr")]# 遍历所有图片的属性并打印
# 这里的目的是展示或处理模板中的图片属性
for attr in pic_attrib_list:print(attr)
输出:
{'id': '1', 'name': 'Image 0', 'descr': 'python_logo.png'}
输出结果找对应图片
此文档中只有一张图,还好。多了可能还不太容易看出谁是谁。
不过有个办法可以查看 name
来帮助识别:
Word | WPS文字 |
---|---|
使用 replace_pic
from docxtpl import DocxTemplatetpl = DocxTemplate('../../test_tpl.docx')
context = {}
tpl.render(context)
tpl.replace_pic('python_logo.png', 'images/新图片.png')
tpl.save('../../test.docx')
- 效果
参考资料
python-docx-template - Replace docx pictures
这篇关于python-docx-template 的 Replace docx pictures 占位图片名称从哪来?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!