我想知道你们是否知道如何用PIL方法正确地缩放图像,我读过,我知道: im.resize(size_tuple) 但是我只是在缩放后不断让我的图像不完整,这里是我的代码和我的照片,希望你能帮助我,谢谢
if image_size[0] < 120 and image_size[1] < 155:
image = image.resize((120,155),Image.ANTIALIAS)
image.save(f_out)
代码会保存我调整大小的图像,但它在底部显示黑线,图像是裁剪而不完整,有任何想法如何解决这个问题?,提前感谢
更新: 这是我正在使用的完整代码
def makeThumb(f_in, f_out, size=(120,155), pad=False):
image = Image.open(f_in)
avatar_size = (120,155)
image_size = image.size
method = Image.NEAREST if image_size == avatar_size else Image.ANTIALIAS
if pad:
thumb = image.crop( (0, 0, size[0], size[1]) )
offset_x = max( (size[0] - image_size[0]) / 2, 0 )
offset_y = max( (size[1] - image_size[1]) / 2, 0 )
thumb = ImageChops.offset(thumb, offset_x, offset_y)
else:
if image_size[0] < 120 and image_size[1] < 155:
image = image.resize((120,155),Image.ANTIALIAS)
image.save(f_out)
else:
thumb = ImageOps.fit(image, size, method,0.05,(0.5, 0.5))
答案 0 :(得分:0)
我怀疑你的PIL版本不好。您的代码完全在您的图像上运行(从您的链接下载)适合我。即:调整框架的大小,没有黑条。我会尝试重新安装(或尝试其他版本)的PIL模块。