利用python怎么对图片进行压缩

  介绍

本篇文章给大家分享的是有关利用python怎么对图片进行压缩,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

项目中大量用到图片加载,由于图片太大,加载速度很慢,因此需要对文件进行统一压缩

一:导入包

得到PIL  import 形象   import 操作系统

二:获取图片文件的大小

def  get_size(文件):   #,才能获取文件大小:KB   时间=size 才能;os.path.getsize(文件)   return 才能;size /, 1024

三:拼接输出文件地址

def  get_outfile (infile,输出文件):   if 才能;输出文件:   ,,,return 外部档案   dir,才能,suffix =, os.path.splitext (infile)   时间=outfile 才能;& # 39;{}治疗{}& # 39;.format (dir,后缀)   return 才能输出文件

四:压缩文件到指定大小,我期望的是150 kb,步骤和质量可以修改到最合适的数值

def  compress_image (infile,输出文件=& # 39;& # 39;,,mb=150,,=10步,,质量=80):   “““才能不改变图片尺寸压缩到指定大小   :才能param  infile:,压缩源文件   :才能param 输出文件:,压缩文件保存地址   :才能param  mb:,压缩目标,KB   ,,:param 步骤:,每次调整的压缩比率   ,,:param 质量:,初始压缩比率   ,,:返回:压缩文件地址,压缩文件大小   “才能”;“   时间=o_size 才能;get_size (infile)   if 才能o_size  & lt;=, mb:   ,,,return  infile   时间=outfile 才能;get_outfile (infile,输出文件)   while 才能;o_size 祝辞,mb:   ,,,我=,Image.open (infile)   ,,,im.save(输出文件,质量=质量)   ,,,if  quality 作用;step  & lt;, 0:   ,,,,,休息   ,,,quality  -=,一步   ,,,o_size =, get_size(输出文件)   return 才能,输出文件,get_size(输出文件)

五:修改图片尺寸,如果同时有修改尺寸和大小的需要,可以先修改尺寸,再压缩大小

# Python学习交流群:778463939   def  resize_image (infile,输出文件=& # 39;& # 39;,,间=1376):   “““才能修改图片尺寸   :才能param  infile:,图片源文件   :才能param 输出文件:,重设尺寸文件保存地址   :才能param 间:,设置的宽度   ,,:返回:   “才能”;“   我才能=,Image.open (infile)   ,,x, y =im.size   y_s 才能=,int (y  *, x_s /, x)   out 才能=,im.resize ((y_s间也),Image.ANTIALIAS)   时间=outfile 才能;get_outfile (infile,输出文件)   out.save才能(输出文件)         if  __name__ ==, & # 39; __main__ # 39;:   compress_image才能(" # 39;D: \ \ space.jpg& # 39;学习)   resize_image才能(" # 39;D: \ \学习space.jpg& # 39;)

以上就是利用python怎么对图片进行压缩,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

利用python怎么对图片进行压缩