当前位置: 首页 > news >正文

Python 插入、替换、提取、或删除Excel中的图片

Excel是主要用于处理表格和数据的工具,我们也能在其中插入、编辑或管理图片,为工作表增添视觉效果,提升报告的吸引力。本文将详细介绍如何使用Python操作Excel中的图片,包含以下4个基础示例:

文章目录

      • Python 在Excel中插入图片
      • Python 替换Excel中的图片
      • Python 提取Excel中的图片
      • Python 删除Excel中的图片

首先需要安装第三方Python库- Spire.XLS for Python。可以下载产品后再从本地路径安装使用,也可以直接使用以下pip命令安装:

pip install Spire.XLS

Python 在Excel中插入图片

我们可以使用Spire.XLS for Python库在指定单元格中插入图片,并设置图片大小等。操作如下:

  1. 创建工作簿Workbook对象并获取指定工作表;
  2. 使用Worksheet.Pictures.Add(int topRow, int leftColumn, Image image)方法在工作表指定单元格中插入图片;
  3. 通过ExcelPicture类下的各属性设置图片的宽度、高度、与单元格边框的距离等;
  4. 使用SaveToFile()方法保存Excel文件。

示例代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()# 获取第一张工作表
sheet = workbook.Worksheets[0]# 在指定单元格中插入图片(此处为第一行第二列,即B1单元格)
picture = sheet.Pictures.Add(1, 2, "示例.png")# 设置图片宽高度
picture.Width = 120
picture.Height = 120# 调整图片所在位置的列宽和行高
sheet.Columns[1].ColumnWidth = 20
sheet.Rows[0].RowHeight = 110# 设置单元格边框与图片之间的距离
picture.LeftColumnOffset = 90
picture.TopRowOffset = 20# 保存文件
workbook.SaveToFile("插入图片.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python Excel图片

Python 替换Excel中的图片

要用新图片替换Excel中的原有图片,可以参考如下步骤:

  1. 加载Excel文件,并获取指定工作表;
  2. 通过Worksheet.Pictures[]属性获取指定图片;
  3. 加载新图,并通过ExcelPicture.Picture属性将指定图片替换为新图;
  4. 使用SaveToFile()方法保存Excel文件。

示例代码:

from spire.xls import *
from spire.xls.common import *# 加载Excel文档
workbook = Workbook()
workbook.LoadFromFile ("插入图片.xlsx")# 获取第一张工作表
sheet = workbook.Worksheets[0]# 获取工作表中第一张图片
excelPicture = sheet.Pictures[0]# 替换图片
excelPicture.Picture = Image.FromFile("pic.jpg")# 保存文档
workbook.SaveToFile("替换图片.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python替换Excel图片

Python 提取Excel中的图片

Spire.XLS for Python库也可以读取Excel文档中的图片,并保存到指定的文件路径。步骤如下:

  1. 加载Excel文件,并获取指定工作表;
  2. 遍历工作表中的所有图片;
  3. 调用ExcelPicture.Picture.Save()方法提取Excel中的图片。

示例代码:

from spire.xls import *
from spire.xls.common import *# 加载Excel文档
workbook = Workbook()
workbook.LoadFromFile("图标.xlsx")# 获取第一张工作表
sheet = workbook.Worksheets[0]# 获取工作表中所有图片
for i in range(sheet.Pictures.Count - 1, -1, -1):pic = sheet.Pictures[i]# 保存图片pic.Picture.Save("提取图片\\图片-{0:d}.png".format(i), ImageFormat.get_Png())workbook.Dispose()

Python读取Excel图片

Python 删除Excel中的图片

Worksheet.Pictures[imgIndex].Remove() 方法允许我们通过索引删除指定图片。要删除Excel中所有图片,可以遍历每张图片然后删除。示例代码如下:

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

Python删除Excel图片

上述示例能帮助掌握使用Python在Excel中插入、替换、删除图片的技巧,并进行一些基本的图片设置。如有问题,可前往论坛交流。

http://www.lryc.cn/news/395319.html

相关文章:

  • 紧凑型建模的veriloga语句要怎么看?
  • 大语言模型系列-Transformer介绍
  • JavaDS —— 顺序表ArrayList
  • Sphinx 搜索配置
  • 如何在不关闭防火墙的情况下,让两台设备ping通
  • windows USB 设备驱动开发-USB 等时传输
  • 【文件共享 windows和linux】Windows Server 2016上开启文件夹共享,并在CentOS 7.4上访问和下载文件
  • 【知网CNKI-注册安全分析报告】
  • 【Python_GUI】tkinter常用组件——文本类组件
  • zdppy+onlyoffice+vue3解决文档加载和文档强制保存时弹出警告的问题
  • C语言从头学31——与字符串变量相关的几个函数
  • Laravel批量插入数据:提升数据库操作效率的秘诀
  • OpenCV:解锁计算机视觉的魔法钥匙
  • 手写简单模拟mvc
  • 【FreeRTOS】同步互斥与通信 FreeRTOS提供的方法
  • Kafka 面试题指南
  • 2024年7月5日 (周五) 叶子游戏新闻
  • 热门开源项目推荐:探索开源世界的精彩
  • Codeforces Round #956 (Div. 2) and ByteRace 2024(A~D题解)
  • 基于YOLOv9的脑肿瘤区域检测
  • 阿里云 ECS 服务器的安全组设置
  • 昇思25天学习打卡营第15天|应用实践之ShuffleNet图像分类
  • 怀庄之醉适合搭配什么食物?
  • Java | Leetcode Java题解之第223题矩形面积
  • 基于单片机的空调控制器的设计
  • 企业如何利用短视频平台做口碑塑造和品牌营销?
  • SQL INSERT批量插入方式
  • 2.5 C#视觉程序开发实例1----IO_Manager实现切换程序
  • 【入门篇】STM32寻址范围(更新中)
  • DDD架构