温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

关于Django-imagekit的简介及用法

发布时间:2020-07-07 11:49:25 来源:亿速云 阅读:294 作者:清晨 栏目:开发技术

小编给大家分享一下关于Django-imagekit的简介及用法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

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的简介及用法有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI