PIL - 图像不旋转

问题描述:

我很好奇为什么我的图像不旋转,它每次都以相同的位置结束。PIL - 图像不旋转

img = Image.open(r'C:\Users\Brett\Downloads\testing.jpg') 
exif_data = { 
    TAGS[k]: v 
    for k, v in img._getexif().items() 
    if k in TAGS 
} 
print(exif_data['Orientation']) 

输出一个“6”

不管我多少度告诉图像旋转,它在相同的位置结束。

if exif_data['Orientation'] == 6: 
    img.rotate(90) 

if exif_data['Orientation'] == 6: 
    img.rotate(270) 

if exif_data['Orientation'] == 6: 
    img.rotate(180) 

我总是有图像最终旋转90度逆时针旋转。我做了什么明显错误?

+2

您是否保存旋转的图像? – rfkortekaas

从(DOCS

Image.rotate(角度,重新采样= 0,展开= 0,中心=无,翻译=无)

返回此图像的经旋转副本。此方法返回此图像的副本,将其中心逆时针旋转给定度数。

图像未旋转到位。您需要存储从rotate()返回的图像。可能是这样的:

if exif_data['Orientation'] == 6: 
    new_image = img.rotate(180) 
+0

谢谢。有意义的是这样。 – BrettJ

+1

是的,动词'rotate'听起来好像可能已经到位。也许他们应该把它称为“旋转”? –