用python实现带有透明通道的图片像PS图层那样进行叠加

本文介绍了一种使用Python的PIL库实现图片叠加的方法,通过复合两张图片并利用透明通道达到类似PS图层叠加的效果。这种方法操作简单,无需依赖复杂的图像处理软件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不点赞白嫖的都是流氓,先上代码后解释

from PIL import Image

infile1 = '/home/huangjx/图片/带有透明通道的图片.png'
infile2 = '/home/huangjx/图片/不带有透明通道的普通图片.png'
outfile = '/home/huangjx/图片/输出.png'
im1 = Image.open(infile1)
r, g, b, a = im1.split()
im2 = Image.open(infile2)
im = Image.composite(im1, im2, a)
"""
Image.composite(image1,image2, mask) ⇒ image
复合类使用给定的两张图像及mask图像作为透明度,插值出一张新的图像。变量mask图像的模式可以为“1”,“L”或者“RGBA”。所有图像必须有相同的尺寸。
链接:https://blog.youkuaiyun.com/zhangziju/article/details/79123275
"""
im.save(outfile)
pass

带有透明通道的图片在电脑打开的预览图是这样子的
在这里插入图片描述
带有透明通道的图片.png如下
在这里插入图片描述
不带有透明通道的普通图片.png
在这里插入图片描述
效果图
在这里插入图片描述

有了这个方法,从本质上就能实现很多类似PS图层叠加的操作了,并且不需要PS工程文件,简直太棒了。
以前在网络上一直找不到这个功能,现在自己“发现研究”出来了,感觉很棒。给自己点个赞吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值