Python之给我一面国旗


1、“给我一面国旗@微信官方”

今天“给我一面国旗@微信官方”刷爆了朋友圈,我也蹭波热度,出个Pythoon教程,原创作品感谢支持。

2、安装PIL模块

  • python2安装PIL模块
  • Python安装Pillow模块`pip3 install Pillow

3、准备一张背景图

  • 注意中间要镂空,保存成GIF格式
  • 下图是我自己PS的
    在这里插入图片描述

4、解决思路

  • 朋友圈下载有国旗的好友头像
  • 查看属性分辨率:1080*1080
  • 背景图就是用下面这张图抠出来的
    在这里插入图片描述
  • 下载自己的头像
  • 查看分辨率:959*959
    在这里插入图片描述
  • 镂空的背景图放在需要生成的头像上就达到了预期效果
  • 因为生成后的国旗图像分辨率:1080*1080
  • 原始头像分辩率为:959*959,合成前需要先将原始头像尺寸调整为1080*1080
  • 以上全部操作代码只有九行

5、全部代码

from PIL import Image

img_bg = Image.open("./lib/bag.gif")
img = Image.open("给我一面国旗.jpg")
#img_bg.convert("L")
#将图片转换成RGBA模式
img_bg = img_bg.convert("RGBA")
#将头像的图片大小改为1080*1080
img = img.resize((1080, 1080))
#获取RGBA四个通道
r, g, b, a = img_bg.split()
#将背景图盖在头像的图片上
img.paste(img_bg, (0, 0), mask=a)
#保存图片
img.save("拿好你的国旗.jpg")

6、文件目录如下

  • 背景图命名为“bag”.gif,放在lib目录下
  • 自已的头像命名为“给我一面国旗.jpg”,放在工程根目录下
  • 运行后会生成带国旗的头像“拿好你的国旗.jpg”
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值