这段代码是一个用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文档的更多相关文章

  1. C# 合并及拆分Word文档

    本文简要分析一下如何如何使用C#简单实现合并和拆分word文档.平时我们在处理多个word文档时,可能会想要将两个文档合并为一个,或者是将某个文档的一部分添加到另一个文档中,有的时候也会想要将文档拆分 ...

  2. 一键批量打印EXCEL、WORD文档

    一键批量打印EXCEL.WORD文档,本方法也可以打印同一个文档N份,可以批量打印A3.A4文档,包括单.双面打印等.希望能帮到广大朋友.请大家注重原创版权,不得在未经许可的下转载.传播,或者用来对同 ...

  3. freemarker导出带图片的word文档

    最近做一个关于文档导出功能, 顺便学习了下freemarker,做了个关于导出带图片的word文档,模板并没有写全,只是验证代码的正确性 这只是做一个小功能,故只做了后台代码关于导出的代码,并未与前台 ...

  4. java 在MySQL中存储文件,读取文件(包括图片,word文档,excel表格,ppt,zip文件等)

    转自:https://blog.csdn.net/u014475796/article/details/49893261 在设计到数据库的开发中,难免要将图片或文档文件(如word)插入到数据库中的情 ...

  5. 解决图片插入word文档后清晰度降低的问题

    解决图片插入word文档后清晰度降低的问题 在默认情况下,word程序会自动压缩插入word文档中的图片以减小整个word文档的.当我们需要插入word文档中的图片保持原始清晰度时,可以通过设置wor ...

  6. python 使用win32com实现对word文档批量替换页眉页脚

    最近由于工作需要,需要将70个word文件的页眉页脚全部进行修改,在想到这个无聊/重复/没有任何技术含量的工作时,我的内心是相当奔溃的.就在我接近奔溃的时候我突然想到完全可以用python脚本来实现这 ...

  7. 合并两个word文档,保持样式不变

    一.需求说明 例如将封面插入到word正文上方 二.导入依赖 <dependency> <groupId>org.apache.poi</groupId> < ...

  8. C# 实现将多个word文档合并成一个word文档的功能

    前段时间项目上遇到这么一个需求,需要将多个OCR识别的word文档合并成一个,于是就在网上找了找,自己修改了一下.在这里跟大家分享一下,希望有用的到的. 要做多word文档合并,首先要导入Micros ...

  9. JAVA合并多个word文档根据文章标题生成目录

    此产品版本是免费版的,我也是在用免费,除了只能单次识别25张一下的word和生成pdf有限制,其他的功能都和正式版差不多. 如果你几十个文档,每个文档几页,输出出来超过25页,那没关系,依然可以使用. ...

  10. 用python批量生成简单的xml文档

    最近生成训练数据时,给一批无效的背景图片生成对应的xml文档,我用python写了一个简单的批量生成xml文档的demo,遇见了意外的小问题,记录一下. 报错问题为:ImportError: No m ...

随机推荐

  1. 【Shell】ps 命令

    ps 命令 Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器. 1. ps 常用的命令 ps -aux #显示所有进程信息 ...

  2. 加密流量识别检测(一)——在VM虚拟机上搭建指定拓扑

  3. Valine评论插件因为LeanCloud国内域名解析问题无法正常使用的解决方法

    近日,LeanCloud 国内域名解析存在问题,Valine评论插件的评论内容都储存在LeanCloud,使用Valine评论插件的个人博客的评论及阅读数会显示失败. 关于 LeanCloud 国内域 ...

  4. 2023-07-14:讲一讲Kafka与RocketMQ中存储设计的异同?

    2023-07-14:讲一讲Kafka与RocketMQ中存储设计的异同? 答案2023-07-14: 在Kafka中,文件的布局采用了Topic/Partition的方式,每个分区对应一个物理文件夹 ...

  5. PTA 21级数据结构与算法实验7—查找表

    目录 7-1 电话聊天狂人 7-2 两个有序序列的中位数 7-3 词频统计 7-4 集合相似度 7-5 悄悄关注 7-6 单身狗 7-7 词典 7-8 这是二叉搜索树吗? 7-9 二叉搜索树 7-1 ...

  6. 【Oracle】 instr函数与substr函数以及自制分割函数

    Oracle instr函数与substr函数以及自制分割函数 instr通常被用来作为判断某个字符串中是否含有执行字符串和将返回结果作为一些数据分割的数据,即有模糊查询like的作用,当返回的查询结 ...

  7. 2021-7-6 new tcpip

    using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Ne ...

  8. 利用python分析pdf数据,分析上市公司财报

    import re import os.path import matplotlib import matplotlib.pyplot as plt from pdfminer.pdfparser i ...

  9. python:map函数

    参考示例 def test(x): return x * 2 mylist = [1, 2, 3, 4, 5] result = list(map(test, mylist)) print(resul ...

  10. 通过 tree shaking 移除无用代码

    tree shaking 依赖于ES Module 的静态语法分析,在项目编译时移除无用的代码以减少文件体积. usedExports 在文件中,我们可能定义了变量但是暂时又没有用到,这样会造成空间的 ...