Django 实现前端图片压缩功能的方法


Posted in Python onAugust 07, 2019

思路:

<img alt="" src="/img/图片真实地址" ></img>

上面是一个典型的HTML中的图片,在django中,src对应的path会经过url进行过滤处理,所以可以通过写view过滤器的方式来实现图片压缩,代码如下

url

url(r'^img/(?P<path>(.+))/$',img),

view

def img(request,path):
  im=Image.open(settings.STATIC_ROOT+path)
  x,y=im.size
  im=im.resize((int(x/1.5),int(y/1.5)),Image.ANTIALIAS)
  response = HttpResponse(mimetype="image/png")
  #将PIL的image对象写入response中,通过response返回
  im.save(response, "PNG")
  return response

结论:通过类似于filter的方法可以实现图片压缩,且下一个请求该图片时,会直接调用缓存,并不会再次进行图片压缩。

注:对性能的影响会在验证完成后上传

以上这篇Django 实现前端图片压缩功能的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现bucket排序算法实例分析
May 04 Python
十个Python程序员易犯的错误
Dec 15 Python
从局部变量和全局变量开始全面解析Python中变量的作用域
Jun 16 Python
python PyTorch预训练示例
Feb 11 Python
python打包压缩、读取指定目录下的指定类型文件
Apr 12 Python
python-pyinstaller、打包后获取路径的实例
Jun 10 Python
django 消息框架 message使用详解
Jul 22 Python
查看jupyter notebook每个单元格运行时间实例
Apr 22 Python
用python对oracle进行简单性能测试
Dec 05 Python
Python 图片处理库exifread详解
Feb 25 Python
只用40行Python代码就能写出pdf转word小工具
May 31 Python
pytorch 梯度NAN异常值的解决方案
Jun 05 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
Aug 07 #Python
python 直接赋值和copy的区别详解
Aug 07 #Python
Python中模块(Module)和包(Package)的区别详解
Aug 07 #Python
python的常见矩阵运算(小结)
Aug 07 #Python
python字典的setdefault的巧妙用法
Aug 07 #Python
解决Django中调用keras的模型出现的问题
Aug 07 #Python
python 字典 setdefault()和get()方法比较详解
Aug 07 #Python
You might like
PHP 5.3.0 安装分析心得
2009/08/07 PHP
php array_merge函数使用需要注意的一个问题
2015/03/30 PHP
基于PHP+jQuery+MySql实现红蓝(顶踩)投票代码
2015/08/25 PHP
浅谈PHP中其他类型转化为Bool类型
2016/03/28 PHP
PHP PDOStatement::getAttribute讲解
2019/02/01 PHP
PHP Primary script unknown 解决方法总结
2019/08/22 PHP
javascript下function声明一些小结
2007/12/28 Javascript
Javascript基础教程之switch语句
2015/01/18 Javascript
JS实现图片剪裁并预览效果
2016/08/12 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
2017/01/21 Javascript
jQuery插件autocomplete使用详解
2017/02/04 Javascript
详解Javascript中DOM的范围
2017/02/13 Javascript
使用socket.io制做简易WEB聊天室
2018/01/02 Javascript
Vue脚手架的简单使用实例
2018/07/10 Javascript
微信小程序使用map组件实现检索(定位位置)周边的POI功能示例
2019/01/23 Javascript
浅谈Javascript常用正则表达式应用
2019/03/08 Javascript
Vue项目路由刷新的实现代码
2019/04/17 Javascript
Vue之beforeEach非登录不能访问的实现(代码亲测)
2019/07/18 Javascript
javascript this指向相关问题及改变方法
2020/11/19 Javascript
[57:53]Secret vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python实现倒计时的示例
2014/02/14 Python
Python中使用partial改变方法默认参数实例
2015/04/28 Python
基于python的Tkinter编写登陆注册界面
2017/06/30 Python
Python编程之gui程序实现简单文件浏览器代码
2017/12/08 Python
python实现复制大量文件功能
2019/08/31 Python
Python qrcode 生成一个二维码的实例详解
2020/02/12 Python
Python __slots__的使用方法
2020/11/15 Python
外企财务年会演讲稿
2014/01/03 职场文书
安全生产管理合理化建议书
2014/03/12 职场文书
高一学生评语大全
2014/04/25 职场文书
领导班子四风表现材料
2014/08/23 职场文书
2015年学校工作总结范文
2015/04/20 职场文书
2019暑假学生安全口号
2019/06/27 职场文书
Java数组详细介绍及相关工具类
2022/04/14 Java/Android
Oracle中DBLink的详细介绍
2022/04/29 Oracle
Win11 21h2可以升级22h2吗?看看你的电脑符不符合要求
2022/07/07 数码科技