Python 合并两张图片

发现一个很有意思的图片处理包PIL,可以将两张图片合并成一张,而且很好看。代码如下

python 复制代码
from PIL import Image

# 打开两张图片
image1 = Image.open("1.jpg").convert("RGBA")
image2 = Image.open("2.jpg").convert("RGBA")

# 确保两张图片的大小相同
image2 = image2.resize(image1.size)

# 创建一个新的空白图片,大小与第一张图片相同
result = Image.new('RGBA', image1.size)

# 修改图片2的透明度为0.2并将其放到新的画布上
image2_with_alpha = Image.new("RGBA", image2.size)
for x in range(image2.width):
    for y in range(image2.height):
        r, g, b, a = image2.getpixel((x, y))
        image2_with_alpha.putpixel((x, y), (r, g, b, int(0.2 * a)))

# 将第一张图片放到新的画布上
result.paste(image1, (0, 0))

# 将修改好透明度的第二张图片叠加到新画布上
result = Image.alpha_composite(result, image2_with_alpha)

# 保存结果图片
result.save("result.png")

结果如下

官网参考 https://pillow.readthedocs.io/en/stable/handbook/index.html

相关推荐
aloha_78911 分钟前
测试开发工程师面经准备(sxf)
java·python·leetcode·压力测试
神仙别闹12 分钟前
基于C语言 HTTP 服务器客户端的实验
服务器·c语言·http
初听于你23 分钟前
运维高级故障排除与恢复-SysRq
运维·服务器·安全
Jonathan Star1 小时前
MediaPipe 在Python中实现人体运动识别,最常用且高效的方案是结合**姿态估计**(提取人体关键点)和**动作分类**(识别具体运动)
开发语言·python·分类
山顶听风1 小时前
分页条初始化
python
無识2 小时前
Linux-第四章web服务
linux·运维·服务器
NewsMash2 小时前
PyTorch之父发离职长文,告别Meta
人工智能·pytorch·python
爱吃橘的橘猫2 小时前
如何解决VMware虚拟机中Linux系统终端不显示ens33 inet IP地址的问题
linux·运维·服务器·虚拟机
硅农深芯2 小时前
如何使用ptqt5实现进度条的动态显示
开发语言·python·qt