kit中文_flask和django的对比

kit中文_flask和django的对比#介绍ImageKit是用于处理图像的Django应用程序。如果需要从原图上生成一个长宽为50×50的图像,则需要ImageKit。ImageKit附带了一系列图像处理器,用于调整大小和裁剪等常见

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

介绍

ImageKit是用于处理图像的Django应用程序。如果需要从原图上生成一个长宽为50×50的图像,则需要ImageKit。

ImageKit附带了一系列图像处理器,用于调整大小和裁剪等常见任务。
 

安装

在安装ImageKit之前,我们需要先安装Pillow,因为ImageKit是基于Pillow和Django做的封装的第三方库

pip install pillow

然后安装django-imagekit

pip install django-imagekit

完成上述步骤后,在 Django 项目的 settings.py 文件中的 INSTALLED_APPS 添加上: 'imagekit'。
 

使用方法

 

ImageSpecField

使用定义图像规范的最简单方法是在模型类上使用 ImageSpecField:

from django.db import models
from imagekit.models import ImageSpecField
from imagekit.processors import ResizeToFill

# 用来保存上传图片相关信息的模型
class (models.Model):
    name = models.CharField(max_length = 50)

    # 原图
    avatar = models.ImageField(upload_to = 'test_pictures') 

    # 注意:ImageSpecField不会生成数据库中的表
    # 处理后的图片
    avatar_thumbnail = ImageSpecField(
        source="avatar", 
        processors=[ResizeToFill(100, 50)], # 处理后的图像大小, 宽×高=100×50 
        format='JPEG',  # 处理后的图片格式
        options={'quality': 100} # 处理后的图片质量
        )
    profile = Profile.objects.all()[0]
    print profile.avatar_thumbnail.url    # > /media/CACHE/images/982d5af84cddddfd0fbf70892b4431e4.jpg
    print profile.avatar_thumbnail.width  # > 100

ImageSpecFields的工作方式与Django的ImageFields非常相似。区别在于,它们是由ImageKit根据您给出的说明自动生成的。在上面的示例中,avatar_thumbnail是avatar 的大小调整版本,保存为质量为100的JPEG格式。
 

ProcessedImageField

如果您不需要保留原始图像(上例中的image);当用户上传图像时,您只需要对其进行处理并保存结果。在这些情况下,您可以使用ProcessedImageField类:

from django.db import models
from imagekit.processors import ResizeToFill
from imagekit.models import ProcessedImageField

class (models.Model):
    avatar_thumbnail = ImageSpecField(
        source="avatar", 
        processors=[ResizeToFill(100, 50)],
        format='JPEG',
        options={'quality': 100}
        )
    profile = Profile.objects.all()[0]
    print profile.avatar_thumbnail.url    # > /media/avatars/MY-avatar.jpg
    print profile.avatar_thumbnail.width  # > 100

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164825.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL导入Excel数据

    转载来自:https://www.cnblogs.com/yuwensong/p/4026332.html好了,现在我来介绍一下如何利用phpMyAdmin批量导入Excel内容到MySQL。首先你要知道phpMyAdmin是什么(不知道的这篇文章可以跳过了),我今天用的版本是phpMyAdmin3.2.4,MySQL的版本是5.1.41。1、第一步我们得到了一个excel表,里面有很多需…

    2022年4月5日
  • 如何在excel2019指定的单元格中插入图片

    如何在excel2019指定的单元格中插入图片最近,要完成一些论文的调研及整理工作,针对各个论文中提到的方法,系统模型等。原想在单元格中插入图片,发现单元格右键插入,压根就没插入图片这一项功能,如图所示故在菜单栏中,找到插入-》图片-》此设备,插入完成后,图片能在整个界面上移动。完全不是我想要的结果。问题解决办法如下:1、选中一个想要放入的单元格,尽量拉的大一点。2、把已插入的图拖到这个单元格内,大致调整一下大小,使其和单元格大小差不多。3、选中图片右键“大小和属性”。4、作如图设置,将属性选为“随单元格改变位置和大

    2022年10月29日
  • java 登陆拦截_登录拦截 – java代码库 – 云代码

    java 登陆拦截_登录拦截 – java代码库 – 云代码[java]代码库packagecom.app.common;importorg.apache.log4j.Logger;importcom.app.model.User;importcom.opensymphony.xwork2.ActionContext;importcom.opensymphony.xwork2.ActionInvocation;importcom.opensym…

    2022年5月14日
  • Android自定义控件之滑动解锁

    Android自定义控件之滑动解锁代码参考地址https://github.com/liuzhiyuan0932/SlideUnLock代码效果图>自定义滑动解锁的控件继承自ViewpublicclassSlideUnlockViewextendsView自定义SlideUnLockView的属性在values文件夹中定义属性

    2022年6月24日
  • mysql 替换某个字段中的某个字符

    mysql 替换某个字段中的某个字符

    2021年10月21日
  • 关于fmincon和cvx[通俗易懂]

    关于fmincon和cvx[通俗易懂]网上有很多fmincon函数如何使用的,这里不多讲。我主要总结我自己知道的。1.精度问题。在我的使用过程中,感觉cvx和fmincon都有精度限制,到10^(-6)左右就不准了。碰到精度问题,我采取做法是同时乘上一个放大因子10^(10)。2.cvx写起来更方便;3.fmincon目标函数和约束函数都可以有多个输入变量,而不仅仅是需要优化的那个变量,这样当目标函数和约束函数以及主要模

    2022年5月29日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号