ZBLOG

# 打开现有的Excel工作簿 wb = load_workbook(name_str) ws = wb[site_name] # 替换为实际的工作表名称 temp_image_path = str(sys.argv[1])+str(date_time)+".png" # temp_image_path = str(sys.argv[1])+"20240824171828866"+".png" # print(temp_image_path) # 将Base64编码字符串转换为Ima...

根据您提供的代码,以下是对其中部分内容的说明和建议:

  1. 请确保已正确导入所需的模块,如 from openpyxl import load_workbookfrom openpyxl.drawing.image import Image as XLImage

  2. 如果需要将图像保存为文件,可以在调整大小后使用 resized_image.save("resized_image.jpg") 进行保存。如果不需要保存,可以将该行注释掉或删除。

  3. 在创建 Excel 图像对象之前,不需要再加载 PIL 的 Image 对象或进行转换。直接使用 resized_image 作为参数传递给 XLImage() 即可。

  4. 请注意,在添加图像之后记得保存 Excel 文件,使用 wb.save(name_str) 进行保存。

下面是修改后的代码示例:

from openpyxl import load_workbook
from openpyxl.drawing.image import Image as XLImage

# 打开现有的Excel工作簿
wb = load_workbook(name_str)
ws = wb[site_name]  # 替换为实际的工作表名称

temp_image_path = str(sys.argv[1]) + str(date_time) + ".png"

# 将Base64编码字符串转换为Image对象
image = decode_base64_to_image(sign_image, temp_image_path)

# 调整图像尺寸以适应单元格大小(可选)
img_width, img_height = image.size
cell_width = ws.column_dimensions['G'].width - 2  # 减去边框宽度,根据实际情况调整值
cell_height = (cell_width / img_width) * img_height

resized_image = image.resize((int(cell_width), int(cell_height)))

# 调整后的图片保存为文件(可选操作)
# resized_image.save("resized_image.jpg")

# 创建Excel工作簿中的图像对象,并插入到指定位置
xl_img = XLImage(resized_image)
xl_img.width = cell_width - 2  # 减去边框宽度,根据实际情况调整值
xl_img.height = cell_height - 2  # 减去边框宽度,根据实际情况调整值
ws.add_image(xl_img, 'G29')

# 保存Excel文件
wb.save(name_str)

请根据您的实际需求进行适当调整,并确保已导入所有所需的模块。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=18099

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?