压缩图片并不是说将图片压缩成zip、rar这种格式,而是在不降低图片质量的情况下通过压缩这种方式来减少图片大小 。而我们可以使用python开发批量压缩图片大小的程序,下文所介绍的就是这个程序的实现方法,想要学习的可以看一下作为参考资料 。
文章插图
1.那么这个python程序只需要写在py文件之中即可,首先需要导入三个库和模块 。分别是用来读取图片的Pillow、将图片转为流式输出的io模块、以及实现动态质量处理的模块dynamic_quality 。这几个模块和库全部都是第三方所有的,需要先使用pip工具将它们下载安装好才可以,代码如下:
from PIL import Imagefrom io import StringIOimport dynamic_quality【Python批量压缩图片大小怎么做?Python如何批量压缩图片】2.然后就是调用Image模块之中的方法open来打开图片,图片打开之后需要用其调用copy()函数复制出来一个对象才可以,而这个复制出来对象不会对原图像造成影响 。然后再使用thumbnail()方法将复制图像缩放到和原图像一样的大小,不过需要设置平滑属性以免图像失真,代码如下:
im = Image.open("photo.jpg")new_photo = im.copy()new_photo.thumbnail(im.size,resample=Image.ANTIALIAS)3.接下来就是实现图片压缩的关键了,定义变量并且给它赋值字典对象,这个字典对象是用来设置动态质量参数的 。最后使用这个设置该对象属性quality的值为85或者其他质量数值都可以,并且还可以通过optimize参数以及progressive参数来让图片打开时调用CPU加载减少图片大小,详细代码示例如下:
save_args = {'format':im.format}if im.format=='JPEG': save_args['quality'].value=https://www.ycpai.cn/python/85 save_args['optimize']=True save_args['progressive=True']=Truenew_photo.save("copy_photo.jpg",**save_args)以上就是关于“Python批量压缩图片大小怎么做?Python如何批量压缩图片”的全部内容了,希望对你有所帮助 。
文章插图
文章插图
文章插图
微信扫码,学习更方便
文章插图
现在报名赠100例知识点合集
文章插图
推荐阅读
- Python单元测试方法有哪些?Python怎么实现单元测试功能
- Python可打印三角形代码怎么写?Python如何打印输出星号等腰三角形
- Python好就业的方法有哪些?Python就业方向哪个好
- Python索引和切片的区别是什么?Python如何区分索引和切片
- 如何用python打印出想要的内容?详解python打印技巧
- 如何单独的安装python?python单独安装的方法
- Windows7为什么安装不了Python?Python安装在win7上失败怎么解决
- Python数组索引和切片怎么用?Python数组切片索引语法是什么
- 抖音批量发货步骤是什么?有哪些方式?
- 抖音怎么批量发货?发货超时有哪些处罚?