美文网首页少儿编程
python还可以这么玩?(一)

python还可以这么玩?(一)

作者: Zero兴 | 来源:发表于2019-07-10 17:46 被阅读0次

图片在我们的生活中随处可见,例如最常见有趣的图片--表情包,你在使用QQ或微信跟别人聊天的时候,是不是经常会发一些表情包图片啊,你们的这些表情是从哪里获取的呢?

有些人会从网上下载一些有趣的表情包,也有一些人会有意识地添加别人发过来的有趣表情包,还有一些人自己制作有趣的表情包,说到制作表情包,很多人是不是第一反应就是使用一些P图软件,没错,这是一种常规的方法,下面就给大家介绍一种高大上的方法,用Python程序来制作表情包,先来上个效果图

最终效果图

在制作表情包之前,先来说一下实现的原理:

1. 选择一张有趣的图片,作为后面要制作的表情轮廓,例如下图所示

轮廓图片

2. 选择另一张有趣的表情包,从选图截取出表情部分,例如下图所示:

截取表情部分

3. 开始将截去出来的图片进行合成,制作的表情包效果如下图所示:

4. 将合成好的表情包添加有趣的文字,最终实现表情包效果如下图所示:

了解了制作表情包流程之后,下面就开始我们制作表情包之旅吧。

这里我们要使用一个专门用于处理图片的外部程序包--PIL(如果不知道包的概念,可以查看我的关于包介绍的文章)

首先在新建立好的程序中导入要使用的包PIL,因为要使用包中工具Image(打开图片工具), ImageDraw(写字工具), ImageFont(设置字体工具),使用方式如下:

from PIL import Image, ImageDraw, ImageFont

接着用打开图片工具Image打开表情图片

p=Image.open("pic.png") # pic.png代表的是要打开的图片名称

接着对打开的图片进行表情部分的裁剪,在裁剪之前要使用直角坐标系对表情部分进行定位,如图下所示:

定位

获取表情上的对角线上的两个点(x1,y1),(x2,y2),两点构成的长方形就是要裁剪的表情图片,

c = p.crop((x1,y1,x2,y2))

再接着,就是对切下来的表情部分图片的大小进行缩小或放大,以让它与选定的轮廓图片更加贴合,

定位

resize_img = c.resize((160,180),Image.ANTIALIAS) # 160:宽 180:高

接着,同样的根据坐标找到轮廓图片表情的起始点(x,y)的大致位置,将缩放好的表情部分图片与轮廓图片合成

使用Image工具打开轮廓图片

bg = Image.open(“轮廓图片名称”)

bg.paste(aa,(x,y))

再接着,使用设置字体工具ImageFont设置要显示的字体格式、大小,

tfont = ImageFont.truetype("华文行楷.ttf",36) # 华文行楷.ttf 是字体格式、 36是字体大小

然后使用写字工具ImageDraw, 绘制文字

draw=ImageDraw.Draw(bg)

draw.text((30,350),"哎呦,小伙不错哟",fill="black", font=tfont)

最后,将制作包的表情图片保存

bg.save(“保存图片名称”) # 例如1.png

升级版表情制作:

将真人照片制作成表情包

制作流程和上面大致相同,只多了一步,将截取表情部分进行脱色处理,不然按照上面的制作流程,制作出来的表情包是如下所示的:

那如何将截图的表情部分图片进行处理,使其符合制作表情包的需要呢?,预知后事,请听下回分解

更多好玩有趣的可以关注我的个人公众号:

相关文章

  • Python可以这么玩

    使用Python若干年,虽然没有研究过源码,但也总结了不少实用技巧,在这里分享给大家。玩蛇是个愉快的过程。 Pyt...

  • python还可以这么玩?(一)

    图片在我们的生活中随处可见,例如最常见有趣的图片--表情包,你在使用QQ或微信跟别人聊天的时候,是不是经常会发一些...

  • python还可以这么玩?(二)

    上回说到使用python制作卡通表情包,这次将继续使用python利用真人照制作表情包,真人照与卡通照最大的区别是...

  • Python的艺术玩法——“孔雀开屏”篇

    本文用Python实现一个“孔雀开屏”的效果,Python也可以这么玩。下面是源码,注释里面的是不同画面的执行代码...

  • 宫崎骏可以这么玩!

  • Python大法:新浪微博也可以这么玩^_^

    环境准备 新浪微博API首先,注册一个新浪开发者帐号,并在 新浪开发平台 新建一个 app.[ps]:开发者平台好...

  • 养生,也可以这么玩

    今天要告诉你的是:养生,也可以这么玩 01饭后吃水果是错误的观念正确的做法是饭前吃否则有可能被别人先吃完了 02一...

  • 原来读书可以这么玩

    原来读书还可以这么玩,今天在圈妈的快速阅读小灶班终于见识了传说中的快速阅读。 家里的书真心多,有我多年积攒下来的,...

  • 原来灯光可以这么玩

    对于设计师和摄影师来说,灯光绝对是一个重头戏。它在很多时候都决定了一副画面的意境和效果,其实说到底摄影玩的就是光影...

  • 飘窗台可以这么玩

    飘窗是家庭装修中很小的一个位置,但是却是可以集娱乐、休闲、工作、学习于一体的空间,那么我们来看下,该如何打造一个属...

网友评论

    本文标题:python还可以这么玩?(一)

    本文链接:https://www.haomeiwen.com/subject/bnfkkctx.html