2012-01-19 57 views

回答

2

您可以使用ProcessedImageField

from imagekit.models import ProcessedImageField 

class Photo(models.Model): 
    original = ProcessedImageField(etcetera) 

in-code documentation這個類,但它看起來像它沒有被拾起readthedocs「 autodoc模塊。

我重新a bug修復的文檔。

0

尋找在這裏:https://github.com/jdriscoll/django-imagekit/blob/master/imagekit/processors/resize.py它看起來像Fit類是你追求的。

未經測試,但我懷疑這是這樣的:

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

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

沒有那只是爲縮略圖的處理器。我想調整在上傳的原始圖像..這曾經是可能與以前的Django imagekits預處理器.. Ofcourse我可以使用一些自定義的PIL處理,但是如果僅僅使用imagekit是不可能的,我會感到驚訝。 –

+0

對不起。我明白你現在要問什麼。您是否嘗試過這樣的:http://stackoverflow.com/questions/2845000/resizing-image-on-upload-with-django-imagekit還是這種方法,你說不再起作用? – sgallen

0

下面會做你在找什麼。您也可以將其他處理器添加到處理器列表中。處理器在保存圖像之前運行。

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

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