Python XlsxWriter – 插入图像
在 insert_image() 方法的帮助下,可以在工作表的某个单元格位置插入一个图像对象。基本上,你必须使用任何类型的符号指定单元格的位置和要插入的图像。
worksheet.insert_image('C5', 'logo.png')
insert_image( )方法在一个字典中接受以下可选参数。
参数 | 默认值 |
---|---|
‘x_offset | 0, |
‘y_offset | 0, |
‘x_scale’ | 1, |
‘y_scale’ | 1, |
‘object_position’ | 2, |
‘image_data’ | None |
‘url’ | None |
‘description’ | None |
‘decorative’ | False |
偏移值的单位是像素。 x_scale 和 y_scale 参数用于水平和垂直方向上的图像缩放。
image_data 参数用于在内存中添加 io.BytesIO 格式的字节流。
例子
下面的程序从当前文件夹中的一个文件中提取图像数据,并将其作为 image_data 参数的值。
from io import BytesIO
import xlsxwriter
workbook = xlsxwriter.Workbook('hello.xlsx')
worksheet = workbook.add_worksheet()
filename = 'logo.png'
file = open(filename, 'rb')
data = BytesIO(file.read())
file.close()
worksheet.insert_image('C5', filename, {'image_data': data})
workbook.close()
输出
下面是结果工作表的视图 —