diff options
Diffstat (limited to 'app/photos/resize.py')
-rw-r--r-- | app/photos/resize.py | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/app/photos/resize.py b/app/photos/resize.py deleted file mode 100644 index 13c0151..0000000 --- a/app/photos/resize.py +++ /dev/null @@ -1,53 +0,0 @@ -import os -import io - -from django.conf import settings - -try: - import Image - import ImageFile -except ImportError: - try: - from PIL import Image - from PIL import ImageFile - except ImportError: - raise ImportError("Could not import the Python Imaging Library.") - -ImageFile.MAXBLOCK = 1000000 - - -def make_local_copies(self,photo): - orig_dir = settings.IMAGES_ROOT + '/flickr/full/' + photo.pub_date.strftime("%Y") - if not os.path.isdir(orig_dir): - os.makedirs(orig_dir) - im = io.StringIO(fname.read().decode('UTF-8')) # constructs a StringIO holding the image - img = Image.open(im) - local_full = '%s/%s.jpg' % (orig_dir, photo.flickr_id) - img.save(local_full) - - #calculate crop: - cur_width, cur_height = img.size - new_width, new_height = 291, 350 - ratio = max(float(new_width) / cur_width, float(new_height) / cur_height) - x = (cur_width * ratio) - y = (cur_height * ratio) - xd = abs(new_width - x) - yd = abs(new_height - y) - x_diff = int(xd / 2) - y_diff = int(yd / 2) - box = (int(x_diff), int(y_diff), int(x_diff + new_width), int(y_diff + new_height)) - - # create resized file - resized = img.resize((int(x), int(y)), Image.ANTIALIAS).crop(box) - # save resized file - resized_filename = '%s/%s.jpg' % (crop_dir, set.id) - try: - if img.format == 'JPEG': - resized.save(resized_filename, 'JPEG', quality=95, optimize=True) - else: - resized.save(resized_filename) - except IOError as e: - if os.path.isfile(resized_filename): - os.unlink(resized_filename) - raise e - os.unlink(img) |