作者 | Ahab
责编 | 屠敏

“表情包”是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其是年轻人,他们的社交方式是所谓“天可不聊,图不可不斗”,几乎任何对话都会出现表情包的身影,一言不合就斗图,自己也会在聊天中发几个表情包,可是总会造成一些小误会,比如下面的图

有好多朋友看到这个表情包之后误以为这也是我用 Python 做的,其实不然,这个图就是网上普通的表情包,但是今天我要用 Python 做几个表情包。

今天制作表情包用到的技术还是我们经常使用的 Turtle 库,可以从之前的文章除了画佩奇我们还要玩点更高级的,去学习 Turtle 的常用语法,然后就是 PIL 库,今天的案例算是做一个小小的复习。话不多说先上图:

这是一个捂脸的表情,可以表达内心千万只***奔腾而过,使用 Turtle 来实现,可以将这个图分成以下几个部分:脸,嘴巴,牙齿,两边的眼泪,手指和手腕,完整的代码和语法不过多解释,贴一个画脸的代码。

# 画脸turtle.speed(5)turtle.setup(900, 600, 200, 200)turtle.pensize(5)turtle.right(90)turtle.penup()turtle.fd(100)turtle.left(90)turtle.pendown()turtle.begin_fill()turtle.pencolor("#B26A0F")  # head side colorturtle.circle(150)turtle.fillcolor("#F9E549")  # face colorturtle.end_fill()

第二个图是斜眼笑,表达的意思你懂得这两个表情包的完整的代码详见文末。

来看第三幅图,这个图是使用 PIL 库来生成的,其实这两个图是两张图拼起来的。首先呢,我们需要找两张图片,一张做表情包的背景,一张做表情。我们就以萌萌哒的熊猫头作为背景,然后试着在背景图上加入金馆长嘻哈表情。

现在我们要把金馆长的表情叠加在熊猫头的背景图中,需要注意的是要在代码中控制好金馆长的表情叠加位置,不然会遮盖住其他轮廓。

from PIL import Image,ImageDraw,ImageFont

img = Image.open("640.jpg")jgz = Image.open("641.jpg")img.paste(jgz,(63,46))

图片的下方是留有一部分空白的,我们可以添加一些文字。

from PIL import Image,ImageDraw,ImageFont

img = Image.open("640.jpg")jgz = Image.open("641.jpg")img.paste(jgz,(63,46))

#控制表情的叠加位置draw = ImageDraw.Draw(img)font = ImageFont.truetype("simyou.TTF",24)draw.text((16,200),"Ahab杂货铺!", fill = (0,0,0), font = font)#控制文字添加位置img.show()img.save("生成的表情包.jpg")

基本就这样,对表情包感兴趣的同学可通过网盘获取源代码:https://pan.baidu.com/s/144ifebObxVI_n_2WtoxCEQ,提取码:a59s。

作者简介:公众号【Ahab杂货铺】号主,在校学生沉迷于Python编程。


 热 文 推 荐 

☞ 和微信杠上的今日头条,凭什么成功? | 畅言

☞ Google 经典面试题解析

☞ 对于编程入门,这 763 位老程序员有话讲!

☞ 便利蜂“高数裁员”开天下先河!

☞ AI,被“横扫记录”反噬?

☞ 绑定1亿用户,15分钟众筹完毕,BitTorrent能否重生

☞ Gartner预测2019年全球IT支出将达到3.8万亿美元

☞ 嫁人当嫁程序员

print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"

点击“阅读原文”,打开 CSDN App 阅读更贴心!

喜欢就点击“好看”吧!

斗图?教你用 Python 制作表情包相关推荐

  1. 人生苦短我用python表情_斗图?教你用Python制作表情包

    "表情包"是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其是年轻人,他们的社交方式是所谓" ...

  2. 教你用Python制作表情包,实现换脸技术!

    "表情包"是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其是年轻人,他们的社交方式是所谓" ...

  3. python表情换头_使用Python制作表情包实现换脸功能

    "表情包"是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其是年轻人,他们的社交方式是所谓" ...

  4. python制作表情包教程_使用Python制作表情包实现换脸功能

    "表情包"是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其是年轻人,他们的社交方式是所谓" ...

  5. 程序员斗图时最爱用哪些表情包?拿走不谢!

    今天最课程小编收集了一堆程序员专用的斗图表情!!大家赶快收藏有某有!! 分分钟成为一名程序员中的斗图大神,哈哈 虽然工作敲代码挺枯燥的,要是有了这些神图,就增加很多欢乐了,用图碾压对方,这个爽哦~~哈 ...

  6. 斗图神器--纯前端实现视频转GIF制作表情包(已开源)

    视频转GIF 在线体验 coldday.github.io/mp4ToGif/ Chrome浏览器插件安装点这里 点这安装 背景 视频转GIF 上面这张图大家都见过吧,哈哈 现在聊天时候少不了斗图,光 ...

  7. linux 视频转gif,GitHub - alinuxsa/VideoToGIF: video to gif 视频转gif制作表情包插件(可以添加文字)...

    Chrome浏览器插件安装点这里 点这安装 Install 背景 上面这张图大家都见过吧,哈哈 现在聊天时候少不了斗图,光发静图逼格略低了些,GIF在斗图中肯定略胜一筹,手绘动画生成GIF对大多数人来 ...

  8. 跟我斗图,我用Python爬虫下载几个G的表情砸死你

    有一个网站,叫做"斗图啦",网址是:https://www.doutula.com/.这里面包含了许许多多的有意思的斗图图片,还蛮好玩的.有时候为了斗图要跑到这个上面来找表情,实在 ...

  9. gif动图表情包如何制作?教你一键生成gif表情包

    随着网络的普及,gif动图表情包在广大网民中非常流行.那么,gif动图表情包是如何制作的呢? 一般来说,gif动图表情包的制作需要专业的软件工具.常用的软件工具有SOOGIF动图.Adobe Phot ...

最新文章

  1. laravel5.6 数据库获取数据模式变为’数组‘
  2. Golang 判断key是否在map中
  3. 可变分区存储管理实验报告总结_操作系统第5次实验报告:内存管理
  4. 【技术综述】一文道尽R-CNN系列目标检测
  5. java连接hbase_HBase实战 | 05405.15.0Spark2使用HBaseSpark访问HBase
  6. IPC--进程间通信五(信号)
  7. WCF 点滴启示录系列(一)
  8. STM32程序下载1:通过keil-ST-Link方式下载
  9. 华为h12m03装系统_华为H22H-03服务器怎么设置从U盘装系统
  10. matlab 函数pdf怎么用_PDF剪裁页面工具怎么用?怎么剪裁PDF页面
  11. 7-20 约分最简分式c语言,7-24 约分最简分式
  12. 攻克3D神器Blender的第一天-【快捷键】
  13. windos系统如何获得超级管理员权限
  14. 水溶性羧基化 CdSe/ZnS 量子的特点
  15. 装逼神器,5 行 Python 代码 实现一键批量扣图
  16. E450Think pad 开机亮红灯,无法启动修复
  17. 精选100个毕业答辩PPT模板
  18. 十二周四次课(6月11日)
  19. windows2008服务器sa密码修改,关于SQL Server 2008忘记sa密码修改sa密码的方法图解
  20. Java 假设一张足够大的纸,纸张的厚度为0.5 毫米。请问对折多少次以后,可以达到珠穆朗玛峰的高度(最新数据:8844.43 米)。请编写程序输出对折次数

热门文章

  1. CVE和NVD的关系
  2. java基于微信小程序的在线作业提交批改系统 uniapp 小程序
  3. 战神引擎去右上角信息
  4. 第 l 个数到第 r 个数的和
  5. python展望_对于Python学习的展望
  6. SQL语句编写经典50题
  7. python中assert是什么意思_你常常看到 Python 代码中的 assert 是个啥?
  8. 有些人 总是莫名其妙的得罪了
  9. 01 Python学习--第一周--开课介绍、数据类型、数据运算、表达式、循环、三元运算、对象基本概念...
  10. Linux DMA 框架介绍,demengine.c文件