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

相关推荐
浅念-32 分钟前
Linux 开发环境与工具链
linux·运维·服务器·数据结构·c++·经验分享
Dontla2 小时前
用pip install -e .开发Python包时,Python项目目录结构(项目结构)(可编辑安装editable install)
python·pip
Thomas.Sir2 小时前
第三章:Python3 之 字符串
开发语言·python·字符串·string
似水এ᭄往昔2 小时前
【Linux】gdb的使用
linux·运维·服务器
tian_jiangnan3 小时前
grafana白皮书
linux·服务器·grafana
威联通网络存储3 小时前
告别掉帧与素材损毁:威联通 QuTS hero 如何重塑影视后期协同工作流
前端·网络·人工智能·python
Dxy12393102164 小时前
Python 根据列表中某字段排序:从基础到进阶
开发语言·windows·python
splage4 小时前
Java进阶——IO 流
java·开发语言·python
cliffordl4 小时前
设计模式(python)
python·设计模式