예제 #1
0
파일: models.py 프로젝트: ericl/nexus
 def clean(self):
     # autogenerate slug if necessary
     slug = self.cleaned_data.get('slug')
     image = self.cleaned_data.get('image')
     if image and not slug:
         self.cleaned_data['slug'] = slugify(nameof(image.name))[:20]
     return forms.ModelForm.clean(self)
예제 #2
0
파일: models.py 프로젝트: EdwardLiang/nexus
 def clean(self):
     # autogenerate slug if necessary
     slug = self.cleaned_data.get('slug')
     image = self.cleaned_data.get('image')
     if image and not slug:
         self.cleaned_data['slug'] = slugify(nameof(image.name))[:20]
     return forms.ModelForm.clean(self)
예제 #3
0
파일: imageutil.py 프로젝트: noahlt/nexus
def resize(input, max_size, hq):
    if hq:
        name = '@%ix%i.png' % max_size
    else:
        name = '@%ix%i.jpg' % max_size
    name = nameof(input) + name
    relpath = THUMBS_PATH + name
    output_file = settings.MEDIA_ROOT + relpath
    output_url = settings.MEDIA_URL + relpath
    if not exists(dirname(output_file)):
        makedirs(dirname(output_file))
    if not exists(output_file) or getmtime(output_file) < getmtime(input):
        image = Image.open(input)
        image = image.convert('RGBA')
        if hq:
            image.thumbnail(max_size, Image.BICUBIC)
            image.save(output_file, 'PNG')
        else:
            image.thumbnail(max_size, Image.ANTIALIAS)
            image.save(output_file, 'JPEG', quality=85)
    return output_url