mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-04-20 23:00:58 +00:00
Set a default IMAGE_COMPRESSION_QUALITY of 85 as per @tomdyson's suggestion, and simplify image backend now that it doesn't have to check for the presence of a quality setting
This commit is contained in:
parent
98e4d74c80
commit
49211cd69c
3 changed files with 8 additions and 21 deletions
|
|
@ -1,4 +1,3 @@
|
|||
from django.db import models
|
||||
from django.conf import settings
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
|
||||
|
|
@ -7,13 +6,8 @@ class InvalidImageBackendError(ImproperlyConfigured):
|
|||
|
||||
|
||||
class BaseImageBackend(object):
|
||||
quality = None
|
||||
|
||||
def __init__(self, params):
|
||||
try:
|
||||
self.quality = settings.IMAGE_COMPRESSION_QUALITY
|
||||
except:
|
||||
pass
|
||||
self.quality = getattr(settings, 'IMAGE_COMPRESSION_QUALITY', 85)
|
||||
|
||||
def open_image(self, input_file):
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -8,20 +8,15 @@ class PillowBackend(BaseImageBackend):
|
|||
def open_image(self, input_file):
|
||||
image = PIL.Image.open(input_file)
|
||||
return image
|
||||
|
||||
|
||||
def save_image(self, image, output, format):
|
||||
if self.quality:
|
||||
image.save(output, format, quality=self.quality)
|
||||
else:
|
||||
image.save(output, format)
|
||||
|
||||
|
||||
image.save(output, format, quality=self.quality)
|
||||
|
||||
def resize(self, image, size):
|
||||
if image.mode in ['1', 'P']:
|
||||
image = image.convert('RGB')
|
||||
return image.resize(size, PIL.Image.ANTIALIAS)
|
||||
|
||||
|
||||
def crop_to_centre(self, image, size):
|
||||
(original_width, original_height) = image.size
|
||||
(target_width, target_height) = size
|
||||
|
|
|
|||
|
|
@ -7,21 +7,19 @@ from wand.image import Image
|
|||
class WandBackend(BaseImageBackend):
|
||||
def __init__(self, params):
|
||||
super(WandBackend, self).__init__(params)
|
||||
|
||||
|
||||
def open_image(self, input_file):
|
||||
image = Image(file=input_file)
|
||||
return image
|
||||
|
||||
|
||||
def save_image(self, image, output, format):
|
||||
image.format = format
|
||||
if self.quality:
|
||||
image.compression_quality = self.quality
|
||||
image.compression_quality = self.quality
|
||||
image.save(file=output)
|
||||
|
||||
|
||||
def resize(self, image, size):
|
||||
image.resize(size[0], size[1])
|
||||
return image
|
||||
|
||||
|
||||
def crop_to_centre(self, image, size):
|
||||
(original_width, original_height) = image.size
|
||||
|
|
|
|||
Loading…
Reference in a new issue