# HG changeset patch # User Paul Boddie # Date 1441756326 -7200 # Node ID 579461e260e67b085a83e308fd7040a5d52a85af # Parent 4e6369d60870699ec88401dbdf74e24b1c0e0f2a Use EXIF data for automatic rotation. diff -r 4e6369d60870 -r 579461e260e6 optimiser.py --- a/optimiser.py Wed Sep 09 00:30:58 2015 +0200 +++ b/optimiser.py Wed Sep 09 01:52:06 2015 +0200 @@ -2,6 +2,7 @@ from array import array from itertools import combinations +import EXIF import PIL.Image import sys @@ -60,8 +61,9 @@ input_filename, output_filename = sys.argv[1:3] rotate = "-r" in sys.argv[3:] + x = EXIF.process_file(open(input_filename)) im = PIL.Image.open(input_filename) - if rotate: + if rotate or x["Image Orientation"].values == [6L]: im = im.rotate(270) w, h = im.size height = (width * h) / w