Skip to content Skip to sidebar Skip to footer

Django Imagekit Processing The Original Image

With version 1.1 I don't understand how I can preprocess the original image (by JUST using imagekit) https://github.com/jdriscoll/django-imagekit/blob/develop/README.rst Having a m

Solution 1:

You can use ProcessedImageField:

from imagekit.models import ProcessedImageField

classPhoto(models.Model):
    original =ProcessedImageField(etcetera)

There is in-code documentation on this class, but it looks like it's not being picked up by readthedocs' autodoc module right now.

I reopened a bug to fix the documentation.

Solution 2:

Looking here: https://github.com/jdriscoll/django-imagekit/blob/master/imagekit/processors/resize.py it looks like the Fit class is what you're after.

Untested but I suspect it's something like:

from django.db import models
from imagekit.models import ImageSpec
from imagekit.processors import resize

classPhoto(models.Model):
    original_image = models.ImageField(upload_to='photos')
    thumbnail = ImageSpec([resize.Fit(50, 50)], image_field='original_image',
            format='JPEG', options={'quality': 90})

Solution 3:

Below will do what you are looking for. You can add other processors to the list of processors as well. The processors are run prior to saving the image.

from imagekit.models import ProcessedImageField
from imagekit.processors import ResizeToFit

classPhoto(models.Model):
    original = ProcessedImageField(
        upload_to='images/%Y%m',
        format=JPEG,
        processors=[ResizeToFit(200, 100)],
        options={'quality': 90}
    )

Post a Comment for "Django Imagekit Processing The Original Image"