Python实用技巧 使用pillow库批量修改文件夹下所有PNG图片透明度
首先安装Pillow库(Pillow是Python图像处理函式库(PIL)的一个分支)
在.py文件中引入os 和PIL库
import os
from PIL import Image
findall 方法进行对指定文件夹下所以文件夹进行遍历,再对.png结尾的文件进行透明度修改处理
def findall(path):dir_string = pathfile_list = os.listdir(dir_string) #待修改文件夹currentpath = os.getcwd() #得到进程当前工作目录os.chdir(dir_string) #将当前工作目录修改为待修改文件夹的位置for fileName in file_list: #遍历文件夹中所有文件if os.path.isdir(fileName):print('文件夹:'+fileName)findall(fileName)else:# print('非文件夹:' + fileName)if fileName.__contains__('.png'):changePngAlpha(fileName)print("---------------------------------------------------")os.chdir(currentpath) #改回程序运行前的工作目录sys.stdin.flush() #刷新print("修改后:"+str(os.listdir(dir_string)))
#输出修改后文件夹中包含的文件
changePngAlpha对具体的文件进行透明度修改,alpha为0时继续减少还是0
# 改变图片透明度 RGBA模式
def changePngAlpha(path):img = Image.open(path)img = img.convert('RGBA') # 修改为 RGBA 实际应用中部分文件可能会有失败,可能是存储格式问题暂未完全解决x, y = img.size# 设置每个像素点的值for i in range(x):for k in range(y):color = img.getpixel((i, k))color = color[:-1] + (color[3]-3,) # 这里设置将图片的Alpha透明度降低3img.putpixel((i, k), color)img.save(path)
最后来看一下文件对比的效果
成功达到效果。
Python实用技巧 使用pillow库批量修改文件夹下所有PNG图片透明度相关推荐
- 批量修改文件夹下图片名称(Python)
本程序的功能是:批量修改文件夹下图片名称. import os import redef replcaeFileName(pic_path): # 修改pic_path路径下的文件名piclist = ...
- 批量修改文件夹下文件的名字
批量修改文件夹下文件的名字 // An highlighted blockpublic static void changeFileNameBatch(String path) {// get fil ...
- 批量修改文件夹下的文件后缀
一个脚本文件,在要修改的目录下运行这个py文件即可,先输入原后缀,再输入需要修改的后缀. import os print("init Suffix:") init = '.' + ...
- 批量修改文件夹下图片的名字
import osclass BatchRename():'''批量重命名文件夹中的图片文件'''def __init__(self):self.path = 'D:\图片\新壁纸\安卓-图3' #表 ...
- 批量修改文件夹下所有文件的名称
所需工具:cmd.excel.记事本 一.利用cmd将文件夹下的内容全部输出 假设要导出的内容在E:/graduate/pic下,输入: e: cd graduate cd pic dir > ...
- Lua 批量修改文件夹下文件名
local s = io.popen("dir C:\\Users\\lizhiyuan\\Desktop\\国家知识产权局ftp法律状态数据\\data /b/s") local ...
- Python OpenCV 批量修改文件夹内所有图片的尺寸
Python OpenCV 批量修改文件夹内所有图片的尺寸 简述 插件 遍历所有文件(包括子文件) 缩放图片尺寸并保存图片 遍历并修改图片 简述 遍历文件夹下的所有子文件(包括自文件夹内的)的图片批量 ...
- 怎么批量修改文件夹里照片的名字
电脑使用3年了,里面容量越来越小,3个盘都标红了.工作起来也很卡顿,我打算整理下自己的电脑.原来是产品的照片图过多,还有现场活动的营销图片.打算进行图片的清除和整理工作,但是无从下手了,图片过大数量过 ...
- linux: 批量修改文件夹及文件夹下文件的名字
假如我有一个文件夹,文件夹下面有一些文件,如下所示: Gideon/gideon_lisha/Gideon_samuel/Gideon_nathan.xml Gideon/lisha_gideon/G ...
- 批量修改文件夹或文件名称
批量修改文件夹或文件名称 1. 找到需要修改的文件夹(文件),Ctrl+A全选,点击左上角主页,找到复制路径 2. 新建excel文件,将复制的路径粘贴进去,用替换的方法将名称前的路径替换掉,这种方法 ...
最新文章
- wxWidgets:滚动Scrolling
- 何谓成功的软件架构设计
- Mybatis中tinyint(1)数据自动转化为boolean处理
- 总结协查上海银行绑卡失败原因的处理过程
- BestCoder Round #87 1003 LCIS[序列DP]
- Android 8.0 (35)----Android8.0.0-r4的OTA升级流程
- C++新特性探究(6.1):auto和decltype的类型推断差异所在
- r4烧录卡内核安装_玩家必看!教你彻底玩转R4烧录卡(下)
- 计算机高效课堂建设,基于信息技术的小学音乐高效课堂的构建
- matlab中文本框的边框旋转,ParaView Clip/Slice,Box参数:位置,旋转,缩放的含义;在Matlab中重建框...
- 漫画:996的本质是什么?
- Ubuntu18.04 + win10 双系统,grub引导配置,美化
- 使用FFmpeg设置视频文件的详细信息
- Linux 配置iSCSI Initiator
- 小米门卡协议加载失败_小米手机门禁卡空白卡开通步骤及写入激活方法
- SuSE and NLD9 user pls note
- 人工智能自学线路——自用
- 微软详解Windows 8图形硬件加速 秒杀Win7
- 使用Ntrip协议连接CORS服务器获取差分数据-Java
- python Excel数据处理三兄弟:xlrd/xlwt/xlutils!