天下网吧 >> 网吧天地 >> 天下码农 >> 后端开发 >> Python >> 正文

Python修改图片尺寸,压缩图片,转换图片格式源码

需求:

压缩图片,调整图片的尺寸(分辨率)为固定大小,统一转存图片为jpg格式。

分析:

使用Image组件可以实现这个需求

图片压缩方法完整代码:

import glob
import os
import sys
from PIL import Image
import shutil

def compressImageFileName(self,filename): 
      # 打开原图片压缩 
     sImg = Image.open(filename)      
     sImg = sImg.convert('RGB')  #新加一行     
     w, h = sImg.size      
     #print(w, h)     
     #print(float(840.0/w))     
     dImg = sImg.resize((840, int(float(840.0/w)*h)), Image.ANTIALIAS) # 设置压缩尺寸和选项,注意尺寸要用括号      
          
     # 如果不存在目的目录则创建一个      
     comdic = "%scompress/"%DIR     
     if not os.path.exists(comdic):      
     	os.makedirs(comdic)      
          
     # 压缩图片路径名称      
     f1 = filename.split('/')      
     f1 = f1[-1].split('\\')      
     f2 = f1[-1].split('.')      
     f2 = '%s%s%s'%(comdic, f2[0], '.jpg')      
     # print(f2)      
     dImg.save(f2,format='jpeg',quality=90) # save这个函数后面可以加压缩编码选项JPEG之类的      
     print("%s compressed succeeded"%f1[-1]) 


执行效果:

原图:

压缩转换后:

本文来源:天下网吧 作者:天下码农

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。若文章侵犯了您的相关权益,请及时与我们联系,我们会及时处理,感谢您对本站的支持!联系Email:[email protected],系统开号,技术支持,服务联系QQ:1175525021本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行