原标题:10089-0-合并指定文件夹下-各一级文件夹内所有图片为gif-存储在各文件夹内-自定义速度-可选自定统一尺寸-不支持单文件夹操作【源代码】
导读:
代码功能概述该代码实现了一个将指定目录下各子目录中的图片合成为GIF动画的工具。用户可以设置每张图片在GIF中显示的时间间隔,还可选择是否统一图片尺寸。合成后的GIF动画将保...
代码功能概述
该代码实现了一个将指定目录下各子目录中的图片合成为GIF动画的工具。用户可以设置每张图片在GIF中显示的时间间隔,还可选择是否统一图片尺寸。合成后的GIF动画将保存在各子目录内,文件名与子目录名相同。同时,代码开头会打印作者相关信息,并在每次处理完成后询问用户是否继续运行程序。
用户操作步骤
- 运行程序:启动代码后,程序首先会打印作者相关信息。
- 设置图片变换时间间隔:程序提示“设置每张图片变换的时间间隔可自行测试(单位秒)如0.5: ”,用户需输入一个数字作为每张图片在GIF中显示的时间间隔(单位为秒),程序会将其转换为毫秒。若输入不是有效数字,程序会提示重新运行并输入正确值。
- 输入目录路径:接着程序提示“请输入目录路径: ”,用户需输入包含子目录及图片的目录路径。程序会检查该路径是否存在且为有效目录,若不是,会提示重新运行并输入正确路径。
- 选择是否统一图片尺寸:程序询问“是否要统一图片尺寸?(Y/N): ”,用户输入
Y
(不区分大小写)则需接着输入统一的图片宽度和高度(单位为像素);若输入其他字符,则不进行尺寸统一操作。若输入的尺寸不是有效整数,程序会提示重新运行并输入正确尺寸。 - 等待合成完成:程序会遍历指定目录下的所有子目录,在每个子目录中查找支持格式(能被
Image.SAVE
识别的格式)的图片文件。若子目录中有图片文件,将这些图片转换为RGB模式,根据用户选择决定是否统一尺寸,然后合成为GIF动画并保存到该子目录,文件名与子目录名相同。若子目录中没有支持的图片文件,程序会提示并跳过该子目录。合成过程中,控制台会显示正在处理的子目录信息以及合成后的GIF保存路径。 - 决定是否继续:所有子目录处理完成后,程序提示“所有目录处理完成.”,并询问“是否要继续运行程序?(y/n): ”,若用户输入
y
(不区分大小写),则可重复上述步骤处理其他目录;若输入其他字符,程序终止运行。
对子文件夹及穿透情况
代码使用os.listdir
结合os.path.isdir
来获取指定目录下的所有子目录,并对每个子目录进行处理,这表明它仅对指定目录下的直接子目录有效,不会穿透到子目录的子目录层级。例如,若指定目录下有子目录A,A下又有子目录A1,程序只会处理A目录中的图片,不会处理A1目录中的图片。
实例验证
假设存在以下文件夹及文件结构:
主文件夹
│
├── 文件夹 A
│ ├── img1.jpg
│ ├── img2.png
│ └── img3.bmp
├── 文件夹 B
│ ├── img4.jpeg
│ └── img5.gif
└── 文件夹 C
├── not_image.txt
└── sub_folder
├── img6.jpg
- 运行程序后,输入主文件夹路径作为目录路径。
- 输入图片变换时间间隔(如
0.5
),选择统一图片尺寸并输入宽度和高度(如800
)。 - 程序会处理文件夹A和文件夹B,将其中的图片转换为RGB模式、统一尺寸为800x800像素后合成为GIF动画,分别保存为
文件夹A/文件夹A.gif
和文件夹B/文件夹B.gif
,并在控制台显示处理信息。 - 文件夹C因不含支持格式的图片文件(
not_image.txt
不是图片,sub_folder
中的图片因程序不穿透子目录不会被处理),程序会提示并跳过该目录。 - 所有目录处理完成后,若用户选择继续运行程序,可再次输入不同的目录路径进行新一轮的图片合成GIF操作。
python版本:3.86
是否带UI界面:非UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 714-批量按指定数量分割源文件夹下文件到目标文件夹下
- 720-批量对指定文件夹下所有txt截取每个txt中指定内容作为每个文件的文件名
- 762-批量提取移动指定文件夹内所有文件包括子孙文件夹文件到指定文件夹
- 769-批量删除文件名中的指定字符串
- 775-批量移动指定文件夹下指定格式文件到目标文件夹
- 778-批量删除指定文件夹下指定格式文件(包含子孙文件夹下的)
- 453-批量删除pdf中包含二维码的注释-(只处理注释)
- 10080-2-监测指定文件夹-对zip-rar-7z所有压缩包创建同名文件夹移入并解压-支持子孙文件夹下压缩包解压-支持多层嵌套压缩包的解压-支持密码库解压
- 20250104-批量删除pdf中指定区域内容【定制版】
- 791-批量为文件夹名添加前缀或后缀
- 1开通VIP会员享全站内容免费查看
- 2🔥🔥🔥承接各种批处理工具定制 / 售后相关信息 / 任何需求请在该文章下留言
- 3752-批量复制文件及文件夹到多个文件夹
- 410081-1-批量解压自解压文件-【支持密码-子文件穿透】【不支持嵌套自解压或压缩包解压】-除自解压文件外不能有其他exe文件
- 5790-批量统计各文件夹下文件类型数量及文件夹路径输出到excell
- 6网页插入bilibili哔哩哔哩视频
- 7401-批量识别pdf中二维码并替换为指定图片或覆盖白色
- 8431-批量合并指定文件夹下各文件夹内pdf为一个pdf文件
- 9Adobe程序完全卸载教程完全卸载无残留-【包括单个程序卸载和全部程序卸载】(win系统版本)
- 10为ps脚本添加快捷键快速调用
还没有评论,来说两句吧...