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

相关推荐
猩猩—点灯2 分钟前
部署远程利器-RustDesk
运维·服务器·网络
BackCatK Chen5 分钟前
Python安装与VSCode配置完整教程(每步带截图说明)
vscode·python·python安装·vscode配置·python 3.9.10·嵌入式环境配置
biubiubiu070617 分钟前
Linux 中 `source` 和 `systemctl daemon-reload` 的区别与踩坑点
linux·运维·服务器
ringking12323 分钟前
Linux 主机通过 Wi-Fi 上网,并将网络通过网口共享给交换机下游设备
linux·服务器·网络
硅基喵39 分钟前
Python 入门:从“其他语言”到 Pythonic 思维的完整迁移手册
python
不愿透露姓名的大鹏1 小时前
华为存储新增LUN存储到VMware集群
运维·服务器·华为·vmware·存储
liu****1 小时前
LangChain-AI应用开发框架(二)
人工智能·python·langchain·大模型部署
未来转换1 小时前
OpenClaw 命令大全以及使用指南
python·ai·openclaw
一目Leizi1 小时前
Burp Suite实战:利用不同响应进行用户名枚举与密码爆破
运维·服务器·安全
从零点2 小时前
第三节linux,编译linux源码
linux·运维·服务器