马上圣诞节,快到了!
~
又到了一年一度表白的时候了

今天教你一个程序员方式的表白!

看一下效果图:
要什么样的,图案都可以自定义的

首先,准备阶段

收集你喜欢人(或者你)的照片,多多益善!

然后需要用到的环境

  • python 3.6
  • pycharm
  • pygame
  • PIL
  • random
  • os

接下来,写代码

分为两部分

1.字体形状

import pygame  # 游戏模块,字体功能,  第三方模块   pip install pygametext = '祝你成功!'
font_size = 30  # 字体大小pygame.init()  # 模块的初始化  为什么  pygame不是我开发的, 我们用的别人  python语法  三原色
font = pygame.font.Font('msyh.ttc', font_size)
print(font)# 字体的渲染
# True 锯齿化   rgb 颜色 由三原色组成  黑  白
font_text = font.render(text, True, (0, 0, 0), (255, 255, 255))
print(font_text)# 获取字体的宽高
height = font_text.get_height()  # 高度
width = font_text.get_width()  # 宽度
print('height: ', height)
print('width: ', width)# 根据什么逻辑贴图  像素点
print(font_text.get_at((1, 1))[0])# 根据像素点做分类: 划分为一个二维列表
image_row_list = []
for x in range(height):image_col_list = []  #for y in range(width):if font_text.get_at((y, x))[0] != 255:  # 如果像素点不是白色image_col_list.append(1)  # 黑色添加数据1else:image_col_list.append(0)  # 白色添加数据0image_row_list.append(image_col_list)for row in image_row_list:print(row)

2.按照字体形状去贴你准备好的图片

from PIL import Image   # 图像处理模块, pip install pillow
import os  # 目录操作, 内置
import random  # 随机数模块, 随机取一张图片# 贴图  照片墙
width_len = len(image_row_list[0])  # 列表的宽
height_len = len(image_row_list)  # # 列表的高# 创建图片
new_image = Image.new('RGB', (width_len * 100, height_len * 100), (255, 255, 255))# 贴图
img_size = 100  # 初始图片尺寸for row in range(height_len):for clo in range(width_len):if image_row_list[row][clo] == 1:  # 如过列表的值为1, 就贴图# 读取图片source_image = Image.open('images\\' + random.choice(os.listdir(r'images')))# 修改图片的大小source_image = source_image.resize((img_size, img_size), Image.ANTIALIAS)# 将图片复制到new_imagenew_image.paste(source_image, (clo * img_size, row * img_size))# 照片强保存
print('正在生成照片墙...')
new_image.save(text + '.png')
print('保存完毕, 请在当前文件项目下查找')

效果图:

这样就大功告成了!

学‘废’了嘛?

欢迎留言评论!

文章没看懂没关系,我这还有视频教程:表白墙←点击左边蓝色文字就可以跳转观看了

Python基础入门教程推荐:←点击左边蓝色文字就可以跳转观看了

圣诞要到了~教你用Python制作一个表白神器——照片墙,祝你成功相关推荐

  1. 还在为 520 发愁吗?教你用 Python 写个表白神器

    520 了,还在为表白发愁吗?教你用 Python 写个表白神器,给心仪的她(他)一个优雅的告白,本文实现用到的库是 turtle. 相关文件 小伙伴们可以关注小编的Python源码.问题解答& ...

  2. python开发rpa_几步教你用 Python 制作一个 RPA 机器人!

    原标题:几步教你用 Python 制作一个 RPA 机器人! 作者 | 阿文 出品 | CSDN(ID:CSDNnews) 头图 | CSDN下载自东方IC 繁琐且重复的工作 在我们日常的工作中,有很 ...

  3. python画心形代码大全_还在为 520 发愁吗?教你用 Python 写个表白神器!

    520 了,还在为表白发愁吗?教你用 Python 写个表白神器,给心仪的她(他)一个优雅的告白,本文实现用到的库是 turtle. 丘比特之箭 首先,我们来画一个丘比特之箭,要实现的最终效果如下: ...

  4. 5 分钟,教你用 Python 制作一个生日提醒!

    大家好,我是安果! 在国内,大部分人都是过农历生日,然后借助日历工具获取农历日期对应的阳历日期,以这一天来过生! 这里还有一个痛点,即:每一年的农历生日对应的阳历日期都不一样 本篇文章将教你利用 Py ...

  5. python词云代码如何增加字数_3分钟教你用python制作一个简单词云

    原标题:3分钟教你用python制作一个简单词云 首先需要安装三个包: 1.制作英文字母的词云 效果图: 代码实现: 其中,test.txt文件内容如下 2.制作中文的词云 效果图: 代码实现: 其中 ...

  6. python写一个表白程序-用Python写一个表白神器让你脱单

    原标题:用Python写一个表白神器让你脱单 来自公众号:Python编程时光 今天是什么节日,就不用小明说了吧? 有女朋友的,该准备的礼物买了吗? 没有对象的,表白的套路学会了吗? 还没有?好吧,你 ...

  7. python表白神器_用Python写一个表白神器让你脱单

    原标题:用Python写一个表白神器让你脱单 来自公众号:Python编程时光 今天是什么节日,就不用小明说了吧? 有女朋友的,该准备的礼物买了吗? 没有对象的,表白的套路学会了吗? 还没有?好吧,你 ...

  8. 元旦到了,手把手教你用 Python 制作一个炫酷烟花秀

    大家好,我是小张, 今天是2021 的最后一天,到了这个时间点,部分小伙伴已经开始复盘这一年的得与失.比如今年增加了多少技能点,看了多少本书,写了多少篇文章或者年前的小目标实现进度大概多少等等:做一个 ...

  9. 几步教你用 Python 制作一个 RPA 机器人!

    作者 | 阿文 出品 | CSDN(ID:CSDNnews) 头图 | CSDN下载自东方IC 繁琐且重复的工作 在我们日常的工作中,有很多事情是重复且繁琐的,组织内部不同的部门开发出来的系统相互之间 ...

最新文章

  1. Pycharm中Python3连接Oracle
  2. 牛客题霸 [子数组最大乘积] C++题解/答案
  3. ios 百度地图指定区域_获取百度地图可视区域范围的数据
  4. 骨干云池存储方式_你好,我存个对象(大误)漫谈对象存储
  5. USACO 2016 January Contest, Gold解题报告
  6. Split()函数的作用
  7. 二分搜索/查找(最大化or最小化问题)
  8. java面试题之spring aop中jdk和cglib哪个动态代理的性能更好?
  9. Linux中查看bz2压缩文件大小,Linux bz2文件解压与压缩之bzip2命令
  10. 联想智能云教室安win7_用“联想智能云教室”部署系统完成后,操作卡顿?
  11. 【C++】图片转byte
  12. Word页码从任意页开始设置方法
  13. oracle数据库存储过程基本语法
  14. 白学立体视觉(2): 相机内外参数与坐标系
  15. 局域网自己搭建服务器之DDNS(动态域名解析),基于阿里域名api+python实现
  16. Windows系统的正版与盗版
  17. 电脑白屏,电脑白屏了按哪个键可以修复?
  18. HDF5 windows编译 release版本、Debug版本
  19. c#网页设计 UI —登录注册界面
  20. kubernetes 部署_kubernetes应用程序部署工具概述

热门文章

  1. Matlab柱状图 不同颜色
  2. 怎么把手机文件导入华为云服务器,华为手机如何上传数据到云服务器
  3. android回收activity,Android系统回收activity行为
  4. 就在明天 用友企业数智化财务峰会落地广州,聚焦实现业财合一新价值
  5. Https证书浏览器红色警告解决
  6. Google浏览器怎么导入证书
  7. 为什么加泪滴,Allegro如何加泪滴?
  8. PTA 6 循环日程表
  9. 计算机机房防火门,弱电机房门为防火门吗
  10. php header 生成pdf,PHP如何生成PDF文档