使用PIL for Django网站旋转通过电子邮件上传的图像

时间:2011-06-12 15:38:42

标签: python django python-imaging-library

我的网站允许用户通过电子邮件将照片上传到他们的图库,效果很好。但是,在纵向模式下在iPhone上拍摄的照片无法正确旋转。我想在“邮件过滤”过程中使用PIL旋转照片。这是我用来成功从电子邮件中检索图像并保存到我的Django模型的代码

    image = ContentFile(b64decode(part.get_payload()))
    img = Photo(user=user)
    filename = part.get_filename().lower()
    img.img.save(filename, image)
    img.save()

* 更新了成功将临时图像旋转到本地目录的代码 *

     image = ContentFile(b64decode(part.get_payload()))
     im = Image.open(image)
     tempfile = im.rotate(90)
     tempfile.save("/srv/www/mysite.com/public_html/media/images/rotate.jpg", "JPEG")
     img = Photo(user=user)
     img.img.save('rotate.jpg', tempfile)
     img.save()

现在,我正在尝试拍摄“临时图像”并将其保存到我的模型中。不幸的是,它不是在储蓄。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:1)

http://effbot.org/imagingbook/image.htm

明确指出rotate()返回一个新的图像实例。

文档中没有任何关于就地操作的内容。或?