Python实现批量合并图片到word文档

 更新时间:2023年10月31日 07:43:38   作者:qwerrt9  
这篇文章主要为大家详细介绍了如何利用Python实现批量合并指定文件夹中的所有图片并插入到Word文档中并保存,感兴趣的小伙伴可以跟随小编一起学习一下

这段代码是一个用Python编写的功能,它将指定文件夹中的所有图片插入到Word文档中并保存。以下是代码的主要步骤和功能:

导入必要的库

Python中的docx库用于操作Word文档,glob库用于匹配文件路径。

from docx import Document
from docx.shared import Inches
import glob

定义函数 insert_images_to_word(image_folder, output_path)

该函数用于将指定文件夹中的所有图片插入到Word文档中,并保存到指定路径。

def insert_images_to_word(image_folder, output_path):
    try:
        # 创建一个空白的Word文档对象
        doc = Document()

        # 添加段落
        doc.add_paragraph('这是一个包含多张图片的Word文档')

        # 获取文件夹中的所有图片文件路径
        image_files = glob.glob(image_folder + '/*.png') + glob.glob(image_folder + '/*.jpg')

        # 遍历图片文件路径列表,逐个添加图片到Word文档中
        for image_file in image_files:
            doc.add_picture(image_file, width=Inches(6), height=Inches(3))

        # 保存Word文档
        doc.save(output_path)
        return True
    except Exception as e:
        print(e)
        return False

 创建一个空白的Word文档对象

doc = Document()

添加一个段落到Word文档中

doc.add_paragraph('这是一个包含多张图片的Word文档')

获取文件夹中的所有图片文件路径

使用glob.glob()函数获取文件夹中所有的.png.jpg图片文件路径。

image_files = glob.glob(image_folder + '/*.png') + glob.glob(image_folder + '/*.jpg')

遍历图片文件路径列表,逐个将图片添加到Word文档中

利用add_picture()方法将图片逐个添加到Word文档中,可以设置图片的宽度和高度。

for image_file in image_files:
    doc.add_picture(image_file, width=Inches(6), height=Inches(3))

保存Word文档到指定路径

使用save()方法保存Word文档到指定的输出路径。

doc.save(output_path)

 返回生成结果状态

如果成功生成Word文档,则返回True,否则返回False

return True

调用函数并输出结果

最后,根据需要指定图片所在文件夹路径和输出文件路径,并调用函数进行操作。根据返回值判断操作是否成功。

# 图片所在文件夹路径
image_folder = r'C:\Users\Admin\Desktop\数据核对'

# Word文档保存路径
output_path = r'C:\Users\Admin\Desktop\output.docx'

# 调用函数
if insert_images_to_word(image_folder, output_path):
    print('Word文档已保存到{}'.format(output_path))
else:
    print('生成Word文档失败。')

这样,代码就完成了将指定文件夹中的所有图片插入到Word文档并保存的功能。

完整代码一

from docx import Document
from docx.shared import Inches
import glob


def insert_images_to_word(image_folder, output_path):
    """
    将指定文件夹中的所有图片插入到 Word 文档中,并保存到指定路径。

    image_folder:图片所在文件夹的路径。
    output_path:Word 文档保存路径。
    """
    try:
        # 创建一个空白的Word文档对象
        doc = Document()

        # 添加段落
        doc.add_paragraph('这是一个包含多张图片的Word文档')

        # 获取文件夹中的所有图片文件路径
        image_files = glob.glob(image_folder + '/*.png') + glob.glob(image_folder + '/*.jpg')

        # 遍历图片文件路径列表,逐个添加图片到Word文档中
        for image_file in image_files:
            doc.add_picture(image_file, width=Inches(6), height=Inches(3))

        # 保存Word文档
        doc.save(output_path)
        return True
    except Exception as e:
        print(e)
        return False


# 图片所在文件夹路径
image_folder = r'C:\Users\Admin\Desktop\数据核对'

# Word文档保存路径
output_path = r'C:\Users\Admin\Desktop\output.docx'

# 调用函数
if insert_images_to_word(image_folder, output_path):
    print('Word文档已保存到{}'.format(output_path))
else:
    print('生成Word文档失败。')

完整代码二

from docx import Document
from docx.shared import Inches
import glob

# 创建一个空白的Word文档对象
doc = Document()

# 添加段落
doc.add_paragraph('这是一个包含多张图片的Word文档')

# 图片所在文件夹路径
image_folder = r'C:\Users\liuchunlin2\Desktop\新建文件夹'

# 获取文件夹中的所有图片文件路径
image_files = glob.glob(image_folder + '/*.png')+glob.glob(image_folder + '/*.jpg')  # 根据实际情况修改文件扩展名

print(image_files)

# 遍历图片文件路径列表,逐个添加图片到Word文档中
for image_file in image_files:
    doc.add_picture(image_file, width=Inches(6), height=Inches(3))

# 保存Word文档
doc.save('output.docx')

到此这篇关于Python实现批量合并图片到word文档的文章就介绍到这了,更多相关Python合并图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Pygame实战之实现扎气球游戏

    Pygame实战之实现扎气球游戏

    这篇文章主要为大家介绍了利用Python中的Pygame模块实现的一个扎气球游戏,文中的示例代码讲解详细,对我们了解Pygame模块有一定的帮助,感兴趣的可以学习一下
    2021-12-12
  • python 写函数在一定条件下需要调用自身时的写法说明

    python 写函数在一定条件下需要调用自身时的写法说明

    这篇文章主要介绍了python 写函数在一定条件下需要调用自身时的写法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • 在Linux命令行中运行Python脚本的流程步骤

    在Linux命令行中运行Python脚本的流程步骤

    Python是一种高级编程语言,被广泛应用于数据科学、机器学习、Web 开发等领域,在Linux操作系统中,Python是一个默认安装的解释器,用户可以通过命令行界面(CLI)来运行Python脚本,在本文中,我们将详细介绍如何在Linux命令行中运行Python脚本,需要的朋友可以参考下
    2023-11-11
  • python使用PIL缩放网络图片并保存的方法

    python使用PIL缩放网络图片并保存的方法

    这篇文章主要介绍了python使用PIL缩放网络图片并保存的方法,涉及Python操作网络图片的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • python中Class(类)的超详细说明

    python中Class(类)的超详细说明

    这篇文章主要介绍了python中Class(类)的相关资料,Class类定义了具有相同属性和方法的对象集合,对象是类的实例,类变量在整个实例化的对象中是公用的,而实例变量是每个对象独有的,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-11-11
  • 解析python的局部变量和全局变量

    解析python的局部变量和全局变量

    函数内部定义的变量就叫局部变量而如果一个变量既能在一个函数中使用,也可以在其他函数中使用,这样的变量就是全局变量。 本文给大家介绍python的局部变量和全局变量的相关知识,感兴趣的朋友一起看看吧
    2019-08-08
  • 示例详解python中的排序

    示例详解python中的排序

    本文详细介绍了如何使用Python实现两组数据的纵向排序,包括开发思想、开发流程和代码示例,感兴趣的朋友一起看看吧
    2024-12-12
  • Python模板的使用详细讲解

    Python模板的使用详细讲解

    Django 模板是使用 Django 模板语言标记的一个文本文档或Python字符串。模板引擎可以识别和解释一些构造。主要是变量和标签。模板是通过上下文来渲染的。渲染用变量的值替换变量,变量的值在上下文中查找,并执行标签。其他的一切都按原样输出
    2022-10-10
  • python学习之whl文件解释与安装详解

    python学习之whl文件解释与安装详解

    whl格式本质上是一个压缩包,里面包含了py文件,以及经过编译的pyd文件,下面这篇文章主要给大家介绍了关于python学习之whl文件解释与安装的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • keras 特征图可视化实例(中间层)

    keras 特征图可视化实例(中间层)

    今天小编就为大家分享一篇keras 特征图可视化实例(中间层),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01

最新评论