我正在尝试从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。不知道为什么我没有收到错误。
答案 0 :(得分:1)
如果该计划永远不会到达该行,那么就无法到达这里"那么问题是thumbnail
正在抛出异常。你在问题中没有提到它,但它应该产生错误。
PIL使用延迟图像加载 - 在open
调用中它可能会打开文件,但它实际上并没有尝试读取整个内容。如果您的文件已损坏或格式错误,一旦你尝试对图像做某事就会失败,就像thumbnail
正在做的那样。