python-docx-template 的 Replace docx pictures 占位图片名称从哪来?

python-docx-template 的 Replace docx pictures 占位图片名称从哪来?

在 Word 中看占位图片名称

右键图片 》查看可选文字

用代码输出

python 复制代码
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)

输出:

bash 复制代码
{'id': '1', 'name': 'Image 0', 'descr': 'python_logo.png'}

输出结果找对应图片

此文档中只有一张图,还好。多了可能还不太容易看出谁是谁。

不过有个办法可以查看 name 来帮助识别:

Word WPS文字

使用 replace_pic

python 复制代码
from docxtpl import DocxTemplate


tpl = 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

相关推荐
烟锁池塘柳04 分钟前
【已解决】解决CondaVerificationError:PyTorch安装包损坏问题
人工智能·pytorch·python
程序员爱钓鱼16 分钟前
Python编程实战 | 函数与模块化编程 - 第三方库的安装与管理(pip使用)
后端·python·ipython
国服第二切图仔16 分钟前
Rust开发之Result枚举与?运算符简化错误传播
开发语言·python·rust
程序员爱钓鱼18 分钟前
Python编程实战 | 面向对象与进阶语法-类与对象的概念
后端·python·ipython
IT学长编程41 分钟前
计算机毕业设计 基于Python的电商用户行为分析系统 Django 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·hadoop·python·django·毕业设计·课程设计·电商用户行为分析系统
国服第二切图仔1 小时前
Rust开发之自定义错误类型(实现Error trait)
开发语言·python·rust
Geoking.1 小时前
PyTorch 中 Tensor 交换维度(transpose、permute、view)详解
人工智能·pytorch·python
咚咚王者1 小时前
人工智能之编程基础 Python 入门:第四章 条件循环与异常
人工智能·python
做运维的阿瑞10 小时前
用 Python 构建稳健的数据分析流水线
开发语言·python·数据分析
左师佑图10 小时前
综合案例:Python 数据处理——从Excel文件到数据分析
开发语言·python·数据分析·excel·pandas