- 图片插入表格自动化媲美vba
-
import os from PIL import Image from docx import Document from docx.shared import Inches # 创建空白的 Word 文档 doc = Document() # 获取所有图片文件路径 image_folder = r"E:\东\全部二维码-------11" image_files = [os.path.join(image_folder, file) for file in os.listdir(image_folder) if file.endswith(".png")] # 计算每个单元格应该放置的图片的索引 num_images = len(image_files) # 根据图片数量自动设置表格的行数和列数 num_rows = num_images // 3 if num_images % 3 == 0 else num_images // 3 + 1 num_cols = 3 # 创建表格 table = doc.add_table(rows=num_rows, cols=num_cols) # 遍历每个单元格,将图片插入到表格中 # 切片操作是非常高效的,因为它只返回需要的元素,而不会复制整个列表。因此,在处理大型列表时,使用切片操作可以显著提高程序的性能。 for i, image_file in enumerate(image_files): # 打开并调整图片尺寸(可选) image = Image.open(image_file) image.thumbnail((Inches(1.5), Inches(1.5))) # 将图片添加到表格的单元格中 cell = table.cell(i // num_cols, i % num_cols) cell.add_paragraph().add_run().add_picture(image_file, width=Inches(1.5)) # 保存 Word 文档 doc.save("东全部车辆new--二维码.docx")