当前位置: 首页> 教育> 幼教 > python压缩图片的代码

python压缩图片的代码

时间:2025/7/11 0:47:37来源:https://blog.csdn.net/2303_79552392/article/details/142184182 浏览次数:0次

从网上复制的,不知道对不对 

def compress_image(infile, outfile='', mb=1500, step=10, quality=80):"""不改变图片尺寸压缩到指定大小:param infile: 压缩源文件:param outfile: 压缩文件保存地址:param mb: 压缩目标,KB:param step: 每次调整的压缩比率:param quality: 初始压缩比率:return: 压缩文件地址,压缩文件大小"""o_size = os.path.getsize(file)/1024if o_size <= mb:return infileoutfile = get_outfile(infile, outfile)while o_size > mb:im = Image.open(infile)im.save(outfile, quality=quality)if quality - step < 0:breakquality -= stepo_size = get_size(outfile)return outfile, get_size(outfile)

我自己写的,没有用循环写,但是感这样也是挺不错的。

#by czl
#date 2024年9月12日#Imag python中用于图片处理的库
from PIL import Image#os 通用的,基本的操作系统交互功能
import osfile_in = r"D:\桌面\test\1.png"#图片的地址,如d:\sb\1.JPGquality = 50#压缩的百分比,50不太明显,30比较明显
path, suffix = os.path.splitext(file_in)#分割输入的路径,格式分别给path, suffix
file_out = "{}_{}{}".format(path, quality, ".jpg")#设置图片的输出路径,质量,格式
#关于转换为.jpg输出是因为png是一种无损压缩,这个库对他没有作用
#如果原本的格式就是jpg,可以这样写
# file_out = "{}_{}{}".format(path, quality, suffix)img = Image.open(file_in)#打开图片
img.save(file_out, quality=quality)

关键字:python压缩图片的代码

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: