2020年,情人巧这个看起来如此浪漫的节教年份,你还是个用一个人吗? 难不成我还能是一条狗? 18年的时候,写过一篇介绍如何使用 Python 来表白的表白文章。 虽然创意和使用效果都不错,情人巧但有一缺点,节教这是个用那个exe文件,女神需要打开电脑,表白才有可能参与进来,情人巧进而被你成功"调戏”。节教 由于是个用很早期的文章了,应该有很多人没有看过。表白 没有看过的情人巧,你可以点击这里查看:用Python写一个表白神器让你脱离单身 提醒你一下,节教后天就是个用 2月14日了。什么?还是一条狗呢? 行吧,那你赶上了,今天的文章,就是为你而写。 明哥今天来教你如何使用 Python 来向心中的女神表白。源码库 前段时间,在微博上刷到了一条推荐。内容是这样的 出于好奇,我点开了,放大再放大,emmm,有点意思吖… 这四个字,对于像我这样腼腆的DS男来说,还真不好意思说,说出来,万一被拒绝了咋办? 使用套路来表白,并观察对方的反应,你大概能清楚对方是否对你也有好感,先测试下自己有几成的把握再下手或许更稳妥。 今天就教大家一个这样的套路:如何使用 Python 来做出来这样的图,有点浪漫,又有点极客。能不能拿下你女神,就要靠你(命)了。(๑•́₃ •̀๑) 首先,你得先找到一张你女神的高清图片(尽量分辨率高点的吧,效果会好点)。 这里我以一张高圆圆的服务器租用图来做一下演示,原图是这样的(分辨率是:2000*1328)。 使用我写好的脚本运行后,就生成了这样一张图,请你点击,放大再放大。(惊喜? 然后将这张图片发给你的女神,具体话术你自己想咯。 好吧,相比女神来说,你可能更在意这是如何实现的(活该你单身)。 其实原理很简单,代码也还不到20 行。 首先,来讲讲原理。 事实上,每一张图片都是由一个一个的像素点所组成的。而每个像素点,都有自己的颜色,其颜色可以用一个数组来表示:(a,b,c),其中每位数的取值范围都是服务器托管 0-255。 比如(0,0,0)代表白色,(255,255,255)代表黑色。 当像素点足够多的时候,这张照片就是我们所说的高清照片。 而如果当像素点太少,我们的肉眼就能感知到明显的锯齿感。 用 Excel 画了个图,每一方格代表一个像素,其中若我的字体的大小设置 5(非字号5,而是每个字占用5个像素),效果大概就是如下这样子。 我只要每个像素取出一个像素值,并使用这个像素做为该字的颜色即可,在像素量够多的情况下,从远处看,是能看到我们原来图像的轮廓的。 有了思路,就可以开始我们的代码。 首先,使用 pillow.Image读取图像,并使用load函数获取到每一个像素值。 然后新建一张画布,并选好你要使用的字体和字体大小。 由于需要不断循环 “我喜欢你!”,这五个字符。所以这里可以while循环 yield 来实现一个生成器。 最后,要给这些字加上相应的颜色,写入新创建的画布中。 最后将成品保存 完整代码如下,供你参考 最后再多上几张效果图吧(对,我是海贼迷)。 1. 路飞 2. 索隆 3. 山治
上一篇
下一篇