Django-imagekit的使用详解


Posted in Python onJuly 06, 2020

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='展示图片')

总结

到此这篇关于Django-imagekit的使用的文章就介绍到这了,更多相关Django imagekit的使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现通过shelve修改对象实例
Sep 26 Python
Python实现提取文章摘要的方法
Apr 21 Python
python3.4用循环往mysql5.7中写数据并输出的实现方法
Jun 20 Python
pip install urllib2不能安装的解决方法
Jun 12 Python
python实现根据文件关键字进行切分为多个文件的示例
Dec 10 Python
pandas DataFrame索引行列的实现
Jun 04 Python
微信公众号token验证失败解决方案
Jul 22 Python
详解python中的数据类型和控制流
Aug 08 Python
Python Django 前后端分离 API的方法
Aug 28 Python
python之列表推导式的用法
Nov 29 Python
Python yield的用法实例分析
Mar 06 Python
Python 下载Bing壁纸的示例
Sep 29 Python
大数据分析用java还是Python
Jul 06 #Python
python文件操作seek()偏移量,读取指正到指定位置操作
Jul 05 #Python
python 读txt文件,按‘,’分割每行数据操作
Jul 05 #Python
python如何调用java类
Jul 05 #Python
使用Python文件读写,自定义分隔符(custom delimiter)
Jul 05 #Python
如何清空python的变量
Jul 05 #Python
增大python字体的方法步骤
Jul 05 #Python
You might like
PHP5与MySQL数据库操作常用代码 收集
2010/03/21 PHP
PHP 写文本日志实现代码
2010/05/18 PHP
dedecms中使用php语句指南
2014/11/13 PHP
PHP微信刮刮卡 附微信接口
2016/07/22 PHP
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
起点页面传值js,有空研究学习下
2010/01/25 Javascript
js判断FCKeditor内容是否为空的两种形式
2013/05/14 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
JS设置手机验证码60s等待实现代码
2017/06/14 Javascript
详解vue-cli + webpack 多页面实例配置优化方法
2017/07/13 Javascript
浅谈webpack下的AOP式无侵入注入
2017/11/12 Javascript
webpack配置打包后图片路径出错的解决
2018/04/26 Javascript
vue实现登录页面的验证码以及验证过程解析(面向新手)
2019/08/02 Javascript
js 对象使用的小技巧实例分析
2019/11/08 Javascript
javascript实现切割轮播效果
2019/11/28 Javascript
[02:47]3.19DOTA2发布会 国服成长历程回顾
2014/03/25 DOTA
python读文件逐行处理的示例代码分享
2013/12/27 Python
Python实现提取文章摘要的方法
2015/04/21 Python
Python制作Windows系统服务
2017/03/25 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
pycharm中使用request和Pytest进行接口测试的方法
2020/07/31 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
详解用 python-docx 创建浮动图片
2021/01/24 Python
在校生汽车维修实习自我鉴定
2013/09/19 职场文书
优秀毕业生求职推荐信范文
2013/11/21 职场文书
实习教师自我鉴定
2013/12/09 职场文书
五水共治捐款倡议书
2014/05/14 职场文书
机械加工与数控专业自荐书
2014/06/04 职场文书
详细的本科生职业生涯规划范文
2014/09/16 职场文书
2015年关爱留守儿童工作总结
2015/05/22 职场文书
安全教育日主题班会
2015/08/13 职场文书
MySQL千万级数据表的优化实战记录
2021/08/04 MySQL
vue+echarts实现多条折线图
2022/03/21 Vue.js