您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使用ImageField模型调整通过Django上传的图像文件的大小?

如何使用ImageField模型调整通过Django上传的图像文件的大小?

我为找不到完整的工作示例而烦恼,只能在这里和那里找到一些。我设法自己解决了问题。这是完整的示例,我将其放在表单的clean()方法中(你也可以以完全相同的方式覆盖模型save()方法-更改ImageField的file属性)。

import StringIO
from PIL import Image

image_field = self.cleaned_data.get('image_field')
image_file = StringIO.StringIO(image_field.read())
image = Image.open(image_file)
w, h = image.size

image = image.resize((w/2, h/2), Image.ANTIALIAS)

image_file = StringIO.StringIO()
image.save(image_file, 'JPEG', quality=90)

image_field.file = image_file
Go 2022/1/1 18:22:24 有314人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶