首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python花式表白

Python花式表白

作者头像
生信交流平台
发布2020-08-06 11:14:40
发布2020-08-06 11:14:40
2.3K00
代码可运行
举报
运行总次数:0
代码可运行

明天就是情人节了,有没有准备好礼物呢?来看看程序猿的花式表白

教你一行代码用Ta的名字比心

代码语言:javascript
代码运行次数:0
运行
复制
print('\n'.join([''.join([('Iloveyou'[(x-y)%8]if((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' ')for x in range(-30,30)])for y in range(15,-15,-1)]))

还有,把"我喜欢你!",藏在图片里!像下面这样。

思路就是获取原来图片的像素,以及每个像素点的颜色。然后循环一行一行的来写"我喜欢你!"。每个字的颜色就用原图里面相应像素点的颜色来填充,只要原图像素够高,也就是行数和列数足够多,那么从远处看还是能看出原图的轮廓,而当你放大的时候就会有惊喜~

代码语言:javascript
代码运行次数:0
运行
复制
from PIL import Image, ImageDraw, ImageFont

font_size = 8
text = "我喜欢你!"
img_path = "123.jpg"

img_raw = Image.open(img_path)
img_array = img_raw.load()

img_new = Image.new("RGB", img_raw.size, (0, 0, 0))
draw = ImageDraw.Draw(img_new)
font = ImageFont.truetype('Dengl.ttf', font_size)

def character_generator(text):
    while True:
        for i in range(len(text)):
            yield text[i]

ch_gen = character_generator(text)

for y in range(0, img_raw.size[1], font_size):
    for x in range(0, img_raw.size[0], font_size):
        draw.text((x, y), next(ch_gen), font=font, fill=img_array[x, y], direction=None)

img_new.convert('RGB').save("save.jpg")
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信交流平台 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 教你一行代码用Ta的名字比心
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档