Python使用python-docx在Word中插入本地图片及格式异常处理

Miles
Miles
发布时间:2026-10-15| 6人浏览过
原创

本文介绍如何使用Python的python-docx库在Word文档中插入本地图片。通过示例代码展示基础插入方法,并针对插入特定格式图片时可能出现的异常问题,提供基于PIL库进行格式转换的解决方案,确保图片能正确嵌入Word文档。

利用Python操作Word文档时,可借助docx模块实现。

安装命令为:pip install python-docx


from docx import Document
from docx.shared import Inches
 
string = '文字内容'
images = '1.jpg' # 保存在本地的图片
doc = Document() # doc对象
doc.add_paragraph(string) # 添加文字
doc.add_picture(images, width=Inches(2))  # 添加图, 设置宽度
doc.save('word文档.docx')  # 保存路径

执行上述代码后,会在本地生成一个Word文档。打开该文档即可看到效果。

但在某些情况下,添加图片可能会引发识别异常。

该问题通常由图片格式引起。对比0.jpg和1.jpg的二进制数据可知,直接添加0.jpg会导致异常,而1.jpg则能正常显示。

以下是解决该问题的方法。

对图片格式进行转换处理。


from docx import Document
from docx.shared import Inches
from PIL import Image
 
string = '文字内容'
images = '0.jpg' # 保存在本地的图片
doc = Document()
doc.add_paragraph(string) # 添加文字
 
try:
 doc.add_picture(images, width=Inches(2))  # 添加图, 设置宽度
except Exception:
 jpg_ima = Image.open(images) # 打开图片
 jpg_ima.save('0.jpg')   # 保存新的图片
 doc.add_picture(images, width=Inches(2))  # 添加图, 设置宽度
 
doc.save('word文档.docx')  # 保存路径

经过处理后,结果与之前正常情况一致。

以上即为Python在Word中存储本地图片的完整流程。如需了解更多Python本地图片存储至Word的相关信息,请参阅本站其他相关文章。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。