4

我是 Django 的新手,目前我正在做我的第一个项目。对于缩略图,我使用的是 sorl-thumbnails,但是一个奇怪的错误让我很生气,无法弄清楚是从哪里来的。

我尝试做的是重新调整图像大小并用画布裁剪 165x165。之后,我将图像发送到服务器并使用 PIL 保存。在 90% 的情况下一切正常,但有时我在控制台中收到以下文本的错误 - “写入图像文件时编码器错误 -2”和“此处不允许暂停”。以下行引发了异常:

{% thumbnail request.user.artist.get_avatar "50x50" crop="center" as im %}

这里奇怪的是,当我将它从“50x50”更改为“55x55”时。一切都开始工作。

图片始终具有相同的尺寸(165x165)。我已签入媒体文件夹,并且图像已正确保存。我使用的 python 版本是 python 3.3.2,Pillow 的版本是 2.2.2 和 Django 1.6。任何帮助都会很有用。

提前致谢。

4

2 回答 2

0

请在此处查看我的答案https://stackoverflow.com/a/41018959/1176671 我在我的 Django 项目中这样做,所以希望它也能对您使用 Django 有所帮助。

于 2016-12-07T13:40:01.393 回答
0

与 sorl-thumbnail 一起使用时出现相同的错误。在谷歌上花了很长时间后,我有了这个简单的解决方案。实际上错误来自PIL(python-pil)。但是对于 Ubuntu 用户,“pip install PIL”不再服务了 :(。但最酷的是我们可以通过简单的包 python-imaging 摆脱这个错误。

sudo apt-get install python-imaging

希望您已经安装了 sorl-thumbnail 教程中提到的 python-pil 和其他依赖项,

对于 sorl-thumbnail

sudo apt-get install libjpeg62 libjpeg62-dev zlib1g-dev

对于 python-pil

sudo apt-get install python-pil python-pil-doc python-pil-dbg
于 2016-08-11T16:28:03.073 回答