Я пытаюсь масштабировать изображение в стиле PIL, чтобы сохранить соотношение сторон. Похоже, что изображение openpyxl не имеет атрибута resize. Я получаю сообщение об ошибке «AttributeError: объект« Изображение »не имеет атрибута« изменить размер »». Если я использую PIL для изменения размера, то я получаю сообщение об ошибке при добавлении изображения «UnboundLocalError: локальная переменная« rel », на которую ссылаются перед назначением». Есть ли способ изменить масштаб изображения, как я пытаюсь сделать.
import openpyxl
import PIL
from PIL import ImageGrab
#from PIL import Image
from openpyxl.drawing.image import Image
image_scale=2
column_start=3
row_start=3
def screen_capture():
img=ImageGrab.grab()
img.save('test.jpg','JPEG')
def screen_scaling():
image_scale=3
img = Image('test.jpg')
img = img.resize((int(img.size[0]/image_scale), int(img.size[1]/image_scale)),PIL.Image.ANTIALIAS)
img.save('test.jpg','JPEG')
wb = openpyxl.Workbook()
ws = wb.active
screen_capture()
screen_scaling()
img1=Image('test.jpg')
img1.anchor = ws.cell(row=row_start, column=column_start).coordinate
ws.add_image(img1)
wb.save('Save_test_data.xlsx')
wb.close()