ImageKit是一个用于处理图像的Django应用程序。需要一个缩略图吗?用户上传图片的黑白版本?ImageKit会为你制作。如果需要通过编程从另一个图像生成一个图像,则需要ImageKit。
ImageKit提供了一组图像处理器,用于调整大小和裁剪等常见任务,但您也可以创建自己的图像处理器。
1、安装
要在 Django 使用 ImageField 模块,必须先安装第三方库 Pillow:
1
2
|
pip install pillow pip install django - imagekit |
完成上述步骤后,在 Django 项目的 settings.py 文件中的 INSTALLED_APPS 添加上imagekit
。
现在准备工作全部完成,可以在项目中使用 django-imagekit 来处理图片了。
2、简单例子
我们在 modles 中这样使用django-imagekit
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
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、前端显示
要在前端显示处理后的图片只需这样:
1
|
src = "{{ profile.picture_90x90.url }} |
附录:django imagekit处理图片
文档地址: https://django-imagekit.readthedocs.io/en/latest/
基本用法
1
2
3
4
5
6
|
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 = '展示图片' ) |
总结
到此这篇关于Django-imagekit的使用的文章就介绍到这了,更多相关Django imagekit的使用内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://segmentfault.com/a/1190000023098613