给我一面国旗 python帮你实现

yipeiwu_com6年前Python基础

本文实例为大家分享了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”

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python math库 ln(x)运算的实现及原理

Python math库 ln(x)运算的实现及原理

这个是很有用的一个运算,除了本身可以求自然对数,还是求指数函数需要用到的基础函数。 实现原理就是泰勒展开,最简单是在x=1处进行泰勒展开: 但该函数离1越远越难收敛,同时大于2时无法收...

python 实现目录复制的三种小结

复制目录: 包含多层子目录 方法: 递归, 深度遍历,广度遍历 深度遍历&广度遍历: 思路: 1.获得源目录子级目录,并设置目标目录的子级路径 1.1在此就创建两个栈(或者队列),将原目...

Python编程产生非均匀随机数的几种方法代码分享

Python编程产生非均匀随机数的几种方法代码分享

1.反变换法 设需产生分布函数为F(x)的连续随机数X。若已有[0,1]区间均匀分布随机数R,则产生X的反变换公式为: F(x)=r, 即x=F-1(r) 反函数存在条件:如果函数y=f...

python 对txt中每行内容进行批量替换的方法

python 对txt中每行内容进行批量替换的方法

如下所示: f = open('./val.txt') lines = f.readlines() #整行读取 f.close() for line in lines: rs =...

pandas.DataFrame选取/排除特定行的方法

pandas.DataFrame选取特定行 使用Python进行数据分析时,经常要使用到的一个数据结构就是pandas的DataFrame,如果我们想要像Excel的筛选那样,只要其中的...