批量对指定文件夹下所有图片进行扩展操作
这段代码实现了一个功能丰富的图片处理工具,能够对指定文件夹及其子文件夹内的多种格式图片进行扩展和尺寸调整操作。支持的图片格式包括 .png、.jpg、.jpeg、.gif、.webp、.bmp 。
用户使用时,首先会被提示输入存放图片的文件夹总路径,输入路径后,程序会对路径中的特殊字符进行编码和解码处理。
接着,用户需要分别指定目标宽度和目标高度,程序会以此为依据对图片进行处理。
处理流程为,先打开图片,若图片模式为 CMYK 则转换为 RGB 。然后获取图片中最常见的颜色,依据原图尺寸与目标尺寸的关系,决定是等比例放大还是缩小图片。之后,使用最常见的颜色创建一个新的目标尺寸图片,并将处理后的原图居中粘贴到新图片中,最后保存扩展后的图片。处理后的图片会在原文件名前加上 expanded_ 作为新文件名,保存在原文件所在文件夹中。
每次处理完指定文件夹及其子文件夹内的所有图片后,程序会询问用户是否继续运行。若输入 y ,则可继续输入新的文件夹路径和目标尺寸进行处理;若输入 n ,则结束程序。
此代码对子文件夹有效,能够穿透子文件夹,对文件夹及其子孙文件夹内符合格式的所有图片进行处理。
以下是实例验证: 假设存在如下文件夹结构:
主文件夹
│
├── 文件夹 A
│ ├── img1.jpg
│ ├── img2.png
│ └── 子文件夹 1
│ ├── img3.jpeg
├── 文件夹 B
│ ├── img4.gif
│ └── img5.webp
└── img6.bmp
将上述代码保存运行后,当用户输入主文件夹路径,以及目标宽度和高度后,程序会对 文件夹A、文件夹A 的子文件夹 子文件夹1 、文件夹B 内所有符合格式的图片,如 img1.jpg、img2.png、img3.jpeg、img4.gif、img5.webp、img6.bmp 进行扩展和尺寸调整处理,并将处理后的图片以新文件名保存在原文件夹内。处理完成后程序会询问是否继续运行。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 726-批量删除指定文件夹下及子孙文件夹下所有文件-不删除文件夹及空文件夹
- 768-以文件中关键词创建文件夹并把包含该关键词的文件移动到该文件夹
- 770-批量获取指定目录下所有的一级文件夹名字
- 771-批量复制指定文件夹到多个文件夹中
- 772-批量删除文件名中某个字符前的所有内容(可选删除字符本身)
- 777-根据文件创建时间修改时间先后对每个文件夹下所有文件进行排序
- 783-对象为文件夹-以关键词创建文件夹-查找指定目录下带有关键词的文件夹-移动到创建的文件夹去
- 785-批量重命指定文件夹内所有文件-指定名称+数字序列…形式
- 789-批量检测指定文件夹下空文件夹并输出到txt
- 10081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件




还没有评论,来说两句吧...