用python画大雄_python制作斗图生成器

640?wx_fmt=png

网上各种带文字的表情图片都被大家玩坏了,今天就和大家一起用 python 亲自做一个带字表情图片生成器。

不知道大家有没有看到网上有很多人都在说 "人生苦短,我用 python",这句话我之前也不是很理解,觉得人生苦短和用python貌似并没有什么关系,后来算是对这句话慢慢有了自己的理解,我觉得一个重要的原因就是 python 有非常多的库,而且功能很强大,很多功能都不再需要自己造轮子,拿过来就能直接使用,这样真的会节省很多的时间和精力,所以我们就把时间浪费在更多有趣的事情上去吧。说到这一点,其实就是跟我今天要用到的一个图片处理库 pillow 有关,我们用 pillow 只需短短几行代码就能实现给图片加字的功能。

640?wx_fmt=png

pillow 是python中一个强大的图片处理库,比如常见的图片旋转、翻转、滤镜效果等,都可以很简单的用 pillow 来实现,我前面的文章也有用到过 pillow 对图片进行处理,如果你还没有安装 pillow 的话,先使用命令 pip install pillow 来安装,下面先来看一段代码,这段代码主要是生成一张文字图片。

from PIL import Image, ImageDraw, ImageFont

content = '你怎么这么好看呐' #这是你要加的文字 image = Image.new(mode="RGB", size=(500,260), color=(255,255,255)) #创建一个空白的图片,大小为300*200,背景为白色 draw = ImageDraw.Draw(image)

imageFont = ImageFont.truetype("C:\Windows\Fonts\FZY4JW.TTF", 58) #定义文字字体及字号,这里用你自己电脑本地的字体 #下面三行是用来计算文字的位置,用来居中文字内容 txtSize = draw.textsize(content, imageFont)

pos_x = (500 - txtSize[0]) / 2 if 500 > txtSize[0] else 0 pos = (pos_x, 100)

draw.text(pos, content, font=imageFont, fill='#000000') #文字写入图片 image.save('68.png') #保存图片

我们再来升级下程序,给一张表情图片加字,实现一个斗图表情生成器,下面是完整的实现代码。

from PIL import Image, ImageDraw, ImageFont

content = '也不知道为啥,我好开心啊' #这是你要加的文字 # image = Image.new(mode="RGB", size=(500,260), color=(255,255,255)) #创建一个空白的图片,大小为300*200,背景为白色 image = Image.open('tim1.jpg') #打开一张图片 draw = ImageDraw.Draw(image)

imageFont = ImageFont.truetype("C:\Windows\Fonts\FZY4JW.TTF", 25) #定义文字字体及字号,这里用你自己电脑本地的字体 width,height = image.size #获取图片大小 #下面三行是用来计算文字的位置,用来居中文字内容 txtSize = draw.textsize(content, imageFont)

pos_x = (width - txtSize[0]) / 2 if width > txtSize[0] else 0 pos = (pos_x, 50)

draw.text(pos, content, font=imageFont, fill='#000000') #文字写入图片 image.save('68.png') #保存图片

640?wx_fmt=png

人生苦短,用短短几行 python 代码就能实现生活中实用的小功能,是不是很有意思呢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/534990.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【spring cloud】(一)使用idea创建可相互调用的多模块应用

各位小伙伴们大家好,欢迎来到这个小扎扎的spring cloud专栏,在这个系列专栏中我对B站尚硅谷阳哥的spring cloud教程进行一个总结,鉴于 看到就是学到、学到就是赚到 精神,这波依然是血赚 ┗|`O′|┛ 💡spr…

python字符串百分号_Python字符串格式化的2种方法

本文介绍了Python字符串格式化,主要有两种方法,分享给大家,具体如下 用于字符串的拼接,性能更优。 字符串格式化有两种方式:百分号方式、format方式。 百分号方式比较老,而format方式是比较先进的&#xff…

【踩坑,已解决】spring cloud删除子模块后创建同名模块时遇到的删除不净,java、resources包失效,java、resources包被标记为模块等问题

💡问题速览📌 问题复现📌 没有任何操作,model又出现了📌 模块重建后java、resources包失效📌 模块重建后java、resources包被标记为了模块📌 问题复现 本人是在跟着B站尚硅谷的视频练习Spring c…

蓝牙扫描过程解析_智慧定位系统之蓝牙网关在室内定位技术的原理浅析-新导智能...

蓝牙室内定位技术是利用在室内安装的若干个蓝牙局域网接入点,把网络维持成根据多用户的基础网络连接形式,并确保蓝牙局域网接入点始终是这个微网的主设备,然后经过丈量信号强度对新加入的盲节点进行三角定位。苏州新导实时定位体系(RTLS)和室…

【spring cloud】(二)服务的注册发现——Eureka

各位小伙伴们大家好,欢迎来到这个小扎扎的spring cloud专栏,在这个系列专栏中我对B站尚硅谷阳哥的spring cloud教程进行一个总结,鉴于 看到就是学到、学到就是赚到 精神,这波依然是血赚 ┗|`O′|┛ 💡spr…

新手攻略熔炉_我的世界攻略:生存模式新手攻略

《我的世界》(英文:《minecraft》)是一款风靡全球的高自由度沙盒游戏,由瑞典MojangAB和4J Studios开发。国际版由微软Mojang工作室开发,中国版由网易代理。Minecraft着重于让玩家去探索、交互,并且改变一个由一立方米大小的方块动态生成的地图…

【spring cloud】(三)服务调用——Ribbon、OpenFeign

各位小伙伴们大家好,欢迎来到这个小扎扎的spring cloud专栏,在这个系列专栏中我对B站尚硅谷阳哥的spring cloud教程进行一个总结,鉴于 看到就是学到、学到就是赚到 精神,这波依然是血赚 ┗|`O′|┛ 💡服务…

c语言斐波那契数列_剑指Offer-10-I.斐波那契数列

题目题目描述写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下: F(0) 0, F(1) 1F(N) F(N - 1) F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数…

mysql 导入 mssql_MySQL(csv,text)导入mssql使用方法

MySQL(csv,text)导入mssql是非常的简单了但是在导入过程中会碰到text字段问题了,下面我们就来看一篇关于MySQL(csv,text)导入mssql使用方法吧,具体的操作细节如下所示。分两步处理,第一步是将csv导入到mysql。没有使用mssql自带客户端的导入功…

c# mvvm模式获取当前窗口_AWTK-MVVM 介绍

MVVM(Model-View-ViewModel)介绍8.1 分离用户界面和业务逻辑在开发应用程序时,要把用户界面和业务逻辑分离开来,这是每个程序员都知道的常识。分离用户界面和业务逻辑有几个重要的好处:有利于隔离变化。用户界面是最容易变化的,易…

【spring cloud】(三)服务降级——Hystrix

各位小伙伴们大家好,欢迎来到这个小扎扎的spring cloud专栏,在这个系列专栏中我对B站尚硅谷阳哥的spring cloud教程进行一个总结,鉴于 看到就是学到、学到就是赚到 精神,这波依然是血赚 ┗|`O′|┛ 💡服务…

mysql高级查询教程_MYSQL高级查询

实际开发中,经常需要对某些数据进行统计,比如,统计某个字段的最大值、最小值、平均值等。MySQL中,提供了一些函数来实现这些功能聚合函数COUNT()——返回某列的行数SUM()——返回某列值的和AVG()——返回某列的平均值MAX()——返回…

【dubbo】(一) dubbo是什么?

各位小伙伴们大家好,欢迎来到这个小扎扎的dubbo专栏,在这个系列专栏中我对B站尚硅谷雷神的dubbo教程进行一个总结,鉴于 看到就是学到、学到就是赚到 精神,这波依然是血赚 ┗|`O′|┛ 💡dubbo知识点速览&a…

axios安装_Vue脚手架安装,与基本语法(干货)

首先,这篇Vue文章是为了下一篇我整合springbootvue前后分离的小demo,这两天整理好会上传哈哈1. Node.js安装1.1 下载安装在node.js 官网下载, 根据自己电脑系统安装,一直点下一步即可1.2 测试安装是否成功WindowsR打开cmd窗口&…

base64 能放数组里面么_数组:总结篇

我们做个总结吧数组理论基础数组是非常基础的数据结构,在面试中,考察数组的题目一般在思维上都不难,主要是考察对代码的掌控能力也就是说,想法很简单,但实现起来 可能就不是那么回事了。首先要知道数组在内存中的存储方…

xampp mysql 卸载_卸载Xampp并安装apache + mysql + php 过程

首先是卸载xampp,打开xampp-control.exe 控制面板,停止apache和mysql服务。如果你是安装版xampp,可以到如果不是则安装如下方法。停止服务之后。就需要卸载服务。打开cmd,用sc.exe这个Windows命令开始——运行——cmd.exe&#xf…

nodejs mysql 返回json_python向mysql中存储JSON及Nodejs取出

虽然把JSON数据存入mysql也是比较蛋疼,但是相比使用Nodejs嵌套处理多个mysql查询并拼接返回数据也算是没mongo时的一个折中方案了。我使用python拼接了一个json格式的字符串,却遇到了一些问题1,如果把json数据转成str存入,那么nod…

17个常用经典数据可视化图表与冷门图表

数据可视化是创建信息图形表示的过程。随着可视化技术的飞速发展,可以利用强大的可视化工具选择合适的数据可视化图表来展示数据。以下专业人士都应该知道的一些最重要的数据可视化图表。 常见数据可视化图表 饼图 饼图是最常见和最基本的数据可视化图表之一。饼图…

python keyerror_盘点Python 初学者最容易犯的10大错误!你中招了吗?

对于新手,初学Python时,总会遇到这样那样的报错,想要弄懂Python错误信息的含义可能还不知道怎么做,这里列出了一些比较常见的Python报错问题,希望对于学习Python的人能够有些帮助。发现有很多想要学习Python却不知道如…

【spring cloud】(六)消息总线——springcloud Bus

各位小伙伴们大家好,欢迎来到这个小扎扎的spring cloud专栏,在这个系列专栏中我对B站尚硅谷阳哥的spring cloud教程进行一个总结,鉴于 看到就是学到、学到就是赚到 精神,这波依然是血赚 ┗|`O′|┛ 💡Bus…