判断图片分辨率并修改,判断图片分辨率,[Python]代码#
判断图片分辨率并修改,判断图片分辨率,[Python]代码#
[Python]代码
# -*- coding: utf-8 -*-import os,sys,ImagerootDir = r'c:\images'targetDir = r'c:\imagesover'def encodeChinese(msg): type = sys.getfilesystemencoding() return msg.decode('UTF-8').encode(type)errFile = open(r'c:\errFile.txt','w')def judgeSize(im): #判断图片分辨率,如果最大边超过1024返回False,如果不超过返回True mySize = im.size maxValue = max(mySize) minValue = min(mySize) if(maxValue > 1024): return False else: return Truedef returnSize(im): #返回图片大小,返回两个值,第一个返回值总为最大 max,min = im.size if max > min: return max,min else: return min,maxdef changeSize(im,max,min): value = max/1024 min = min/value newimg = im.resize((1024,min),Image.ANTIALIAS) return newimgdef main(): for parent,dirnames,filenames in os.walk(rootDir): for filename in filenames: fName = filename filename = parent + os.sep + filename fPostfix = os.path.splitext(filename)[1] try: img = Image.open(filename) except: print filename print encodeChinese('打开这个文件出错') continue #img.load() print filename print fPostfix if(fPostfix !='.jpg' and fPostfix !='.png' and fPostfix != '.JPG' and fPostfix != '.PNG'): errFile.write(str(filename) + '\n') errFile.write(encodeChinese('上面这个文件不是图片,请检查...') + '\n') errFile.write('\n') else: print 'juageSize()' if(judgeSize(img) == False): print 'judgeSize == False' max,min = returnSize(img) newimg = changeSize(img,max,min) newimg.save(targetDir + os.sep + fName) print str(targetDir + os.sep + fName) print encodeChinese('保存完毕') print encodeChinese('处理完毕') errFile.close()main()
相关内容
- 调节图片亮度和饱和度,图片亮度饱和度,[Python]代码
- 九九乘法表,乘法,[Python]代码im
- 从WeatherCN上提取天气数据,weathercn提取天气,# -*- codin
- Python信息录入小系统(使用shelve),pythonshelve,Python s
- python监控日志并予以清理,python监控日志,Daemonize.py
- 读取excel内容并写入sqlite中,excelsqlite,[Python]代码fn
- 扫描端口使用情况,扫描端口情况,[Python]代码#!
- subprocess 使用一例,subprocess使用,用subprocess实
- 增强亮度,,[Python]代码#
- 用途都在各个函数名称之前的注释上了,用途函数注释
评论关闭