-1
我試圖做一個for循環,它是通過一個帶有4個值的列表運行的: 16, 32, 64, 128
。Python:如何在for循環中Image.resize?
這些是腳本需要調整圖像大小的四種尺寸。
這是我的全碼:
def on_btn_resize_clicked(self, widget):
if len(self.imgOriginal) > 0 and len(self.appRoot) > 0: #check if original-image and app-root is select
_imgFilename = os.path.splitext(basename(self.imgOriginal))[0] #get filename
_imgFileExtension = os.path.splitext(basename(self.imgOriginal))[1] # get filextension
quickly_sizes = [16, 32, 64, 128] #define all sizes, resize to 16x16, 32x32, 64x64, 128x128
for size in quickly_sizes:
print size
im=Image.open(self.imgOriginal)
im = im.convert("RGB")
im = im.resize((int(size), int(size)), Image.ANTIALIAS)
im.save(self.appRoot+"/data/media/"+_imgFilename+str(size)+_imgFileExtension)
widget.set_label("All four images is save!")
from subprocess import call
call(["nautilus", self.appRoot+"/data/media/"]) #open/show folder where all files is save
循環運行,但它不保存圖像文件夾中。
我在做什麼錯?上述
您是否收到任何錯誤?你不需要在調整大小和'_imgFilename'和'_imgFileExtension'從哪裏來做'int(size)'? –
Nop!好吧,我刪除int(大小)..嗯試試看這裏:http://paste.ubuntu.com/1294721/ – Voidcode
添加打印語句,以驗證它保存文件的位置。我只是在測試png上運行了你的quick_sizes循環,並且它工作正常。 – DSM