openpyxl保存图片
时间: 2023-07-04 14:03:46 浏览: 112
要将图片保存到 Excel 文档中,您需要使用 openpyxl 的 Image 类。以下是一些示例代码:
```python
from openpyxl import Workbook
from openpyxl.drawing.image import Image
# 创建 Workbook 对象
wb = Workbook()
ws = wb.active
# 加载图片
img = Image('path/to/image.jpg')
# 将图片添加到单元格 B2 中
ws.add_image(img, 'B2')
# 保存 Excel 文档
wb.save('example.xlsx')
```
在上面的代码中,我们首先创建了一个 Workbook 对象和一个 active worksheet 对象。然后使用 Image 类加载图片,并将其添加到单元格 B2 中。最后,我们使用 save() 方法将 Excel 文件保存到指定路径。
请注意,openpyxl 目前只支持 JPEG、PNG 和 BMP 格式的图片。如果您要加载其他格式的图片,可能需要使用其他第三方库来将其转换为支持的格式。
相关问题
openpyxl保存图片时缩小图片大小
为了在使用openpyxl保存图片时缩小图片大小,可以使用PIL库来处理图片。下面是一个示例代码,展示了如何将图片缩小到指定的尺寸:
```python
from openpyxl.drawing.image import Image
from PIL import Image as PILImage
# 打开图片
image_path = 'path/to/image.jpg'
pil_image = PILImage.open(image_path)
# 指定目标尺寸
target_size = (400, 300)
# 缩小图片
pil_image.thumbnail(target_size)
# 将缩小后的图片保存到 Excel 文件中
wb = openpyxl.Workbook()
ws = wb.active
img = Image(image_path)
img.width = pil_image.width
img.height = pil_image.height
ws.add_image(img, 'A1')
wb.save('output.xlsx')
```
python通过openpyxl保存图片到指定excel的sheet页面,第一列保存图片名称,第二列保存图片
的路径。
以下是一个示例代码:
```python
from openpyxl import Workbook
from openpyxl.drawing.image import Image
# 创建一个新的工作簿
wb = Workbook()
# 选择第一个工作表
ws = wb.active
# 加载图片
img = Image('example.png')
# 将图片添加到工作表中
ws.add_image(img, 'B2')
# 在第一列添加图片名称
ws['A2'] = 'example.png'
# 在第二列添加图片路径
ws['B2'] = 'C:/Users/user/Desktop/example.png'
# 保存工作簿
wb.save('example.xlsx')
```
在这个示例中,我们首先创建一个新的工作簿并选择第一个工作表。然后,我们使用`Image`类加载要保存的图像并将其添加到工作表中。在第一列中,我们添加了图片的名称,在第二列中,我们添加了图片的路径。最后,我们使用`save`方法保存工作簿。
阅读全文