Python PIL «IOError: файл изображения урезан» с большими изображениями

Я думаю, что эта проблема не связана с Zope. Тем не менее яобъясню что яя пытаюсь сделать: я

используя PUT_factory в Zope для загрузки изображений в ZODB по FTP. Загруженное изображение сохраняется как изображение Zope внутри вновь созданного контейнерного объекта. Это прекрасно работает, но я хочу изменить размер изображения, если оно превышает определенный размер (ширина и высота). Так что я'используя функцию миниатюр PIL для изменения их размера, то есть до 200x200. Это работает нормально, если загруженные изображения относительно маленькие. Я не'Проверьте точный лимит, но 976x1296px все еще в порядке.

С большими картинками я получаю:

Module PIL.Image, line 1559, in thumbnail
Module PIL.ImageFile, line 201, in load
IOError: image file is truncated (nn bytes not processed).

Я тестировал много JPEG с моей камеры. Я неЯ думаю, что они все усечены.

Вот мой код:

if img and img.meta_type == 'Image':
  pilImg = PIL.Image.open( StringIO(str(img.data)) )
elif imgData:
  pilImg = PIL.Image.open( StringIO(imgData) )

pilImg.thumbnail((width, height), PIL.Image.ANTIALIAS)

Насколько я'я использую PUT_factory, я неу меня нет файлового объекта, яиспользуя либо необработанные данные с фабрики, либо ранее созданный (Zope) объект Image.I '

Мы слышали, что PIL обрабатывает данные изображения по-разному, когда превышен определенный размер, но я нене знаю, как настроить мой код. Или это связано с ПИЛЬленивая загрузка? я

Ответы на вопрос(4)

Ваш ответ на вопрос