Python PIL库不工作image.thumbnail(size,Image.ANTIALIAS)

时间:2013-03-11 22:58:32

标签: python python-imaging-library

我正在尝试从PIL导入Image,ImageChops,ImageOps

在python中调试此脚本

我在这里搜索了所有问题,似乎是“image.thumbnail(size,Image.ANTIALIAS)”。有人有主意吗?感谢

image = Image.open(f_in)
print "got here"
image.thumbnail(size, Image.ANTIALIAS)
print "cannot get here"
image_size = image.size
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:
    thumb = ImageOps.fit(image, size, Image.ANTIALIAS, (0.5, 0.5))

thumb.save(f_out)

修改 感谢Mark的快速回答。我想通了。

我必须:

pip uninstall PIL
sudo apt-get install libjpeg8-dev 
pip install PIL

我没有安装libjpeg。不知道为什么我没有收到错误。

1 个答案:

答案 0 :(得分:1)

如果该计划永远不会到达该行,那么就无法到达这里"那么问题是thumbnail正在抛出异常。你在问题中没有提到它,但它应该产生错误。

PIL使用延迟图像加载 - 在open调用中它可能会打开文件,但它实际上并没有尝试读取整个内容。如果您的文件已损坏或格式错误,一旦你尝试对图像做某事就会失败,就像thumbnail正在做的那样。