时间:2020-11-29 10:26:17 | 栏目:Python代码 | 点击:次
ImageKit是一个用于处理图像的Django应用程序。需要一个缩略图吗?用户上传图片的黑白版本?ImageKit会为你制作。如果需要通过编程从另一个图像生成一个图像,则需要ImageKit。
ImageKit提供了一组图像处理器,用于调整大小和裁剪等常见任务,但您也可以创建自己的图像处理器。
1、安装
要在 Django 使用 ImageField 模块,必须先安装第三方库 Pillow:
pip install pillow pip install django-imagekit
完成上述步骤后,在 Django 项目的 settings.py 文件中的 INSTALLED_APPS 添加上imagekit
。
现在准备工作全部完成,可以在项目中使用 django-imagekit 来处理图片了。
2、简单例子
我们在 modles 中这样使用django-imagekit
:
from django.db import models from imagekit.models import ImageSpecField from imagekit.processors import ResizeToFill class Profile(models.Model): name = models.CharField(max_length = 50) # 原图 picture = models.ImageField(upload_to = 'test_pictures') # 注意:ImageSpecField不会生成数据库中的表 # 处理后的图片 picture_90x90 = ImageSpecField( source="picture", processors=[ResizeToFill(90, 90)], # 处理后的图像大小 format='JPEG', # 处理后的图片格式 options={'quality': 95} # 处理后的图片质量 ) def __str__(self): return self.name
图片上传后会根据我们的设定生成相应的处理后的图片。
3、前端显示
要在前端显示处理后的图片只需这样:
src="{{ profile.picture_90x90.url }}
附录:django imagekit处理图片
文档地址: https://django-imagekit.readthedocs.io/en/latest/
基本用法
from pilkit.processors import ResizeToFill from imagekit.models import ProcessedImageField image = ProcessedImageField(upload_to='movie/images', processors=[ResizeToFill(480, 326)], format='JPEG', options={'quality': 60}, verbose_name='展示图片')
总结