Я использую изображение django и создаю пользовательский процессор. Я хочу узнать размер в KB (или байтах), но не могу этого сделать. Атрибут size определяет размеры, а не размер файла. Я новичок, так что мне удалось найти attr из PIL, чтобы получить больше информации об изображении, но ни один из них фактически не дает размер файла в байтах.Django ImageKit и PIL
У меня есть этот процессор для ModelForm.
Помогите с этим?
Я добавляю код, написанный до сих пор. Это скорее тестовый код;
import urllib
import os
class CustomCompress(object):
def process(self, image):
print 'image.width',image.width
print 'image.height',image.height
print 'image.size', image.size
print 'image.info', image.info
print 'image.tobytes', image.tobytes
print 'image.category', image.category
print 'image.readonly', image.readonly
print 'image.getpalette', image.getpalette
st = os.stat(image).st_size
print 'get_size ', st
return image
Здесь представлен forms.py
class PhotoForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(PhotoForm, self).__init__(*args, **kwargs)
self.fields['old_image'] = ProcessedImageField(spec_id='myapp:test_app:old_image',
processors=[CustomCompress()],
format='JPEG',
# options={'quality': 60}
)
class Meta:
model = Photo
fields = ['old_image']
Я получаю сообщение об ошибке: принуждать к Unicode: нужна строке или буфер, JpegImageFile нашел – Uma
я обновил свой код, указанный выше в этом вопросе. – Uma