通过Python在Excel中添加或删除图片的操作流程

Written by

in

文章目录
  • 在数据处理与办公自动化场景中,Excel 文件常需嵌入图片以增强可视化表达。然而,手动添加或删除图片不仅效率低下,还容易出错。如何用 Python 实现 Excel 中图片的自动化管理?答案是:使用 Free Spire.XLS for Python 免费库。 本文将系统介绍如何通过 Python 代码,在 Excel 文件中添加图片和删除图片,并提供完整示例与操作流程。内容基于真实可用的技术方案,适用于数据分析师、自动化工程师及办公自动化爱好者。
  • 在众多 Python 库中,如 pandas、openpyxl 等,虽然能处理 Excel 表格结构,但对图片操作支持有限。例如: openpyxl 只能读写单元格内容,无法直接操作图片。 xlwings 虽可调用 Excel 界面,但依赖运行环境,不适用于脚本自动化。 相比之下,Free Spire.XLS for Python 是一款专为处理 Excel 文件设计的跨平台库,支持图片的添加、删除、裁剪、格式调整等完整功能,且无需安装 Excel,无需依赖 COM 接口,完全在 Python 环境中运行。 ✅ 优势总结如下: 对比维度 Free Spire.XLS for Python openpyxl / xlwings 图片添加支持 ✅ 支持 ❌ 仅支持单元格内容 图片删除支持 ✅ 支持 ❌ 无直接接口 无需 Excel 运行 ✅ 支持 ❌ 需Excel环境 脚本自动化 ✅ 高效 ⚠️ 依赖外部环境 说明:Free Spire.XLS for Python 支持 .xlsx 和 .xls 格式,但有篇幅限制,适用于小型文档。
  • 若需精确控制图片的坐标和宽高,可通过 ExcelPicture 提供的 LeftColumnOffset / TopRowOffset / Width / Height 属性设置: from spire.xls import * from spire.xls.common import * # 创建工作簿对象 workbook = Workbook() # 获取第一个工作表 sheet = workbook.Worksheets[0] # 添加图片到工作表指定单元格 imgPath = “logo.png” picture = sheet.Pictures.Add(1, 3, imgPath) # 自定义图片位置 picture.LeftColumnOffset = 90 # 左侧偏移90 picture.TopRowOffset = 20 # 顶部偏移20 # 自定义图片尺寸 picture.Width = 150 picture.Height = 150 # 保存文件 workbook.SaveToFile(“add_custom_size_image.xlsx”, ExcelVersion.Version2016) workbook.Dispose()
  • Free Spire.XLS for Python 支持按索引删除指定图片或批量删除所有图片,以下是具体实现。
  • 场景 推荐操作 数据报告生成 自动添加图表或截图 项目进度可视化 在任务表中嵌入进度图 采购单/合同文件处理 添加公司 Logo 或审批页图片 自动化审计流程 删除旧版本中的冗余图片 Free Spire.XLS for Python 为 Python 开发者提供了轻量、免费的 Excel 图片操作方案,无需依赖 Microsoft Excel 即可完成图片的添加(指定单元格 / 自定义尺寸)和删除(指定图片 / 批量删除)。其优势在于跨平台兼容性和简洁的 API 设计,在实际应用中,可结合批量文件遍历等逻辑,进一步扩展功能,提升 Excel 处理的自动化效率。 以上就是通过Python在Excel中添加或删除图片的操作流程的详细内容,更多关于Python Excel添加或删除图片的资料请关注风君子博客其它相关文章! 您可能感兴趣的文章: Python利用Spire.XLS for Python将Excel转换为图片 Python实现批量识别图片文字并保存到excel中 Python实现将Excel中图表形状等内容导出为图片 Python实现提取Excel嵌入图片并重命名 基于Python开发批量提取Excel图片的小工具
  • 目录
    • 引言
    • 为什么选择 Python + Free Spire.XLS?
    • Python 添加图片到 Excel 中的完整流程
      • 步骤1:安装库
      • 步骤2:代码示例 — 将图片添加到指定单元格位置
    • 扩展技能:自定义图片位置和尺寸添加
      • 通过 Python 删除 Excel 中图片的实现方法
        • 场景 1:删除指定位置的图片
          • 删除工作表中所有图片
      • 实际应用场景与建议

        在数据处理与办公自动化场景中,Excel 文件常需嵌入图片以增强可视化表达。然而,手动添加或删除图片不仅效率低下,还容易出错。如何用 Python 实现 Excel 中图片的自动化管理?答案是:使用 Free Spire.XLS for Python 免费库。

        本文将系统介绍如何通过 Python 代码,在 Excel 文件中添加图片删除图片,并提供完整示例与操作流程。内容基于真实可用的技术方案,适用于数据分析师、自动化工程师及办公自动化爱好者。

        在众多 Python 库中,如 pandasopenpyxl 等,虽然能处理 Excel 表格结构,但对图片操作支持有限。例如:

        • openpyxl 只能读写单元格内容,无法直接操作图片。
        • xlwings 虽可调用 Excel 界面,但依赖运行环境,不适用于脚本自动化。

        相比之下,Free Spire.XLS for Python 是一款专为处理 Excel 文件设计的跨平台库,支持图片的添加、删除、裁剪、格式调整等完整功能,且无需安装 Excel,无需依赖 COM 接口,完全在 Python 环境中运行。

        ✅ 优势总结如下:

        对比维度 Free Spire.XLS for Python openpyxl / xlwings
        图片添加支持 ✅ 支持 ❌ 仅支持单元格内容
        图片删除支持 ✅ 支持 ❌ 无直接接口
        无需 Excel 运行 ✅ 支持 ❌ 需Excel环境
        脚本自动化 ✅ 高效 ⚠️ 依赖外部环境

        说明:Free Spire.XLS for Python 支持 .xlsx 和 .xls 格式,但有篇幅限制,适用于小型文档。

        pip install spire.xls.free
        

        该场景适用于图片需与单元格内容对齐的情况(如报表中图片对应某行数据),核心是通过 Worksheet.Pictures.Add() 指定图片路径和目标单元格。

        from spire.xls import *
        from spire.xls.common import *
             
        # 创建工作簿对象
        workbook = Workbook()
        
        # 获取第一个工作表
        sheet = workbook.Worksheets[0]
        
        # 添加图片到工作表指定单元格
        imgPath = "logo.png"
        picture = sheet.Pictures.Add(1, 3, imgPath)
        
        # 调整单元格大小以容纳图片
        sheet.Columns[2].ColumnWidth = 25
        sheet.Rows[0].RowHeight = 135
        
        # 保存文件
        workbook.SaveToFile("InsertImage.xlsx", ExcelVersion.Version2013)
        workbook.Dispose()
        

        若需精确控制图片的坐标和宽高,可通过 ExcelPicture 提供的 LeftColumnOffset / TopRowOffset / Width / Height 属性设置:

        from spire.xls import *
        from spire.xls.common import *
        
        # 创建工作簿对象
        workbook = Workbook()
        
        # 获取第一个工作表
        sheet = workbook.Worksheets[0]
        
        # 添加图片到工作表指定单元格
        imgPath = "logo.png"
        picture = sheet.Pictures.Add(1, 3, imgPath)
        
        # 自定义图片位置
        picture.LeftColumnOffset = 90 # 左侧偏移90
        picture.TopRowOffset = 20 # 顶部偏移20
        
        # 自定义图片尺寸
        picture.Width = 150
        picture.Height = 150
        
        # 保存文件
        workbook.SaveToFile("add_custom_size_image.xlsx", ExcelVersion.Version2016)
        workbook.Dispose()
        

        Free Spire.XLS for Python 支持按索引删除指定图片或批量删除所有图片,以下是具体实现。

        工作表中的图片以列表形式存储在 Pictures 属性中,可通过索引(从 0 开始)定位并删除:

        from spire.xls import *
        from spire.xls.common import *
        
        # 加载 Excel 文件
        workbook = Workbook()
        workbook.LoadFromFile("InsertImage.xlsx")
        
        # 获取第一个工作表
        sheet = workbook.Worksheets[0]
        
        # 删除工作表中第一张图片
        sheet.Pictures[0].Remove()
        
        # 保存文件
        workbook.SaveToFile("DeleteImage.xlsx", ExcelVersion.Version2013)
        workbook.Dispose()
        

        通过遍历 Pictures 列表,批量删除所有图片:

        from spire.xls import *
        from spire.xls.common import *
        
        # 加载 Excel 文件
        workbook = Workbook()
        workbook.LoadFromFile("InsertImage.xlsx")
        
        # 获取第一个工作表
        sheet = workbook.Worksheets[0]
        
        # 删除工作表中所有图片
        for i in range(sheet.Pictures.Count - 1, -1, -1):
            sheet.Pictures[i].Remove()
        
        # 保存文件
        workbook.SaveToFile("DeleteAllImage.xlsx", ExcelVersion.Version2013)
        workbook.Dispose()
        

        提示:删除后,单元格将恢复为纯文本或空白。

        场景 推荐操作
        数据报告生成 自动添加图表或截图
        项目进度可视化 在任务表中嵌入进度图
        采购单/合同文件处理 添加公司 Logo 或审批页图片
        自动化审计流程 删除旧版本中的冗余图片

        Free Spire.XLS for Python 为 Python 开发者提供了轻量、免费的 Excel 图片操作方案,无需依赖 Microsoft Excel 即可完成图片的添加(指定单元格 / 自定义尺寸)和删除(指定图片 / 批量删除)。其优势在于跨平台兼容性和简洁的 API 设计,在实际应用中,可结合批量文件遍历等逻辑,进一步扩展功能,提升 Excel 处理的自动化效率。

        以上就是通过Python在Excel中添加或删除图片的操作流程的详细内容,更多关于Python Excel添加或删除图片的资料请关注风君子博客其它相关文章!

        您可能感兴趣的文章:

        • Python利用Spire.XLS for Python将Excel转换为图片
        • Python实现批量识别图片文字并保存到excel中
        • Python实现将Excel中图表形状等内容导出为图片
        • Python实现提取Excel嵌入图片并重命名
        • 基于Python开发批量提取Excel图片的小工具

        站内搜索