python生成单词壁纸
1、首先上结果:

其实就是一段简单的代码。加上英语单词表加上几张背景图生成许多类似的图片再设置成桌面背景,十分钟一换。有心的人闲的时候随手就能换换桌面背背单词。最不济也能混个脸熟。
3、上代码
#-*- coding:utf8 -*-
from PIL import Image,ImageFont,ImageDraw #引用相关库
import sys
import os
import random
newfont1=ImageFont.truetype('simsun.ttc',120) #设置字体,及字体大小
newfont2=ImageFont.truetype('cambria.ttc',50) #设置字体,及字体大小
newfont3=ImageFont.truetype('simsun.ttc',50) #设置字体,及字体大小
filename1='E:\ch.txt'#定义字典位置
'''
字典内容示意:
abandon/ ə’bændən/ vt.丢弃;放弃,抛弃
aboard/ ə’bɔ:d/ ad.在船(车)上;上船
absolute/ ‘æbsəlu:t/ a.绝对的;纯粹的
absolutely/ ‘æbsəlu:tli/ ad.完全地;绝对地
absorb/ əb’sɔ:b/ vt.吸收;使专心
abstract/ ’æbstrækt/ n.摘要
abundant/ ə’bΛndənt/ a.丰富的;大量的
abuse/ ə’bju:z, ə’bju:s/ vt.滥用;虐待 n.滥用
academic/ ækə’demik/ a.学院的;学术的
accelerate/ æk’seləreit/ vt.(使)加快;促进
access/ ‘ækses/ n.接近;通道,入口
'''
fo=open(filename1,'r', encoding='UTF-8')
for line in fo.readlines():
bgfile='E:\\bg\\'+str(random.randint(1,11))+'.jpg'#背景图只有11张所以随机生成相应的地址。注意windows上\要用两个否则变成转义字符
line=line.replace('\n','')#处理掉相关无用符号
t1=line.split('/ ')[0]#单词
t2=line.split('/ ')[1]#音标
t3=line.split('/ ')[2]#解释
im = Image.open(bgfile) # 读取图片
draw=ImageDraw.Draw(im)
sz1=draw.textsize(t1,font=newfont1)#获得t1相关格式的大小的list即宽高便于后期设置文字居中
sz2=draw.textsize(t2,font=newfont2)
sz3=draw.textsize(t3,font=newfont3)
draw.text((int(1980/2-sz1[0]/2),416),t1,(255,255,255),font=newfont1)#设置字体出现的位置X动态居中,Y固定 字体颜色RBG,
draw.text((int(1980/2-sz2[0]/2),540),t2,(255,255,255),font=newfont2)#我的电脑是1920*1080分辨率所以我用的背景图都是1920*1080然后可以写死
draw.text((int(1980/2-sz3[0]/2),604),t3,(255,255,255),font=newfont3)
im.save('E:\\dc\\'+t1+'.jpg') #保存图片
print('E:\\dc\\'+t1+'.jpg')#显示处理到哪里
fo.close()
3、结束。觉得有用可以留个评论。
附:已生成的4级英语单词壁纸3400多张
https://pan.baidu.com/s/1dDgw6shJasT35OSA8Aj4yg
python生成单词壁纸的更多相关文章
- 使用python生成词云
什么是词云呢? 词云就是一些关键词组成的一个图片.大家在网上经常看到,下面看一些例子: 那用python生成一个词云的话怎么办呢,首先要有一些词,咱们随便找个吧,用see you again的歌词好了 ...
- JavaScript 解析 Django Python 生成的 datetime 数据 时区问题解决
JavaScript 解析 Django/Python 生成的 datetime 数据 当Web后台使用Django时,后台生成的时间数据类型就是Python类型的. 项目需要将几个时间存储到数据库中 ...
- 【python】【转】Python生成随机数的方法
如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文 ...
- Python生成随机数的方法
这篇文章主要介绍了Python生成随机数的方法,有需要的朋友可以参考一下 如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与 ...
- Python 生成的页面中文乱码问题
第一 保证 程序源文件里的中文的编码格式,如我们把 源文件的编码设置成utf8的. reload(sys) sys.setdefaultencoding('utf-8') 第二, 告诉浏览器,我们须要 ...
- 如何使用python生成xml
最近要用python生成一个xml格式的文件.因为有一些内容是中文,原来的xml文件中使用了CDATA 的部分. 而之前的python程序所用的库中没有 创建这个区域的方法.无奈研究了大半天. 最后用 ...
- python生成随机图形验证码
使用python生成随机图片验证码,需要使用pillow模块 1.安装pillow模块 pip install pillow 2.pillow模块的基本使用 1.创建图片 from PIL impor ...
- Python 生成随机验证码
Python生成随机验证码 Python生成随机验证码,需要使用PIL模块. 安装: 1 pip3 install pillow 基本使用 1. 创建图片 1 2 3 4 5 6 7 8 9 fro ...
- Python生成随机验证码
Python生成随机验证码,需要使用PIL模块. 安装: pip3 install pillow 基本使用 1.创建图片 from PIL import Image img = Image.new(m ...
随机推荐
- css学习の第二弹—文字格式化排版
1.css格式化排版 >>字体设计: etc:body{font-family:"Microsoft Yahei";} >>字号,颜色: etc:body{ ...
- 使用MBROSTool 工具制作本地硬盘多启动盘的方法总结
前段时间写了一个自用五合一多启动盘分享--分别用来维护娱乐,wifi密码破解,win&mac登陆密码绕过/清除,反馈的同学还是挺多,觉得大家都有这方面的需求,于是再把自己的使用经验总结一下. ...
- comfirm 方法显示对话框
comfirm 方法显示对话框 原理: confirm() 方法用于显示一个带有指定消息和 OK 及取消按钮的对话框 confirm(message): message:要在 window 上弹出的对 ...
- MySQL DBA教程全套视频资料
MySQL基础入门.MySQL多实例安装与企业应用场景.MySQL应用管理及进阶实战操作.MySQL乱码问题及字符集实战.MySQL备份-增量备份及数据恢复基础实战.MySQL主从复制原理及实战部署. ...
- 用C#语言编写:数组分析器
static void Main(string[] args) { #region 创建数组 Console.Write("请输入数 ...
- ng-if ng-show ng-hide区别(面试题)
ng-if ng-show ng-hide区别 实现原理方面: ng-show/ng-hide是通过修改css样式方式控制元素显示与隐藏,对应的DOM元素会一直存在于当前页面中: 而ng-if根据表 ...
- 智齿客服网页端接入文档V2.3
产品介绍 智齿客服网页端接入提供以下两种部署方式. 一.网页组件(推荐) 通过智齿客服网站咨询组件,企业的用户可快捷联系到企业客服获取帮助.智齿客服网页组件提供强大的用户行为采集能力和系统对接能力,支 ...
- 网络通信 --> CRC校验
CRC校验 一.什么是CRC校验 循环校验码(Jyclic Redundancy Check,简称CRC码): 是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意 ...
- KVM之五:KVM日常管理常用命令
1.查看.编辑及备份KVM 虚拟机配置文件 以及查看KVM 状态: 1.1.KVM 虚拟机默认的配置文件在 /etc/libvirt/qemu 目录下,默认是以虚拟机名称命名的.xml 文件,如下,: ...
- 慢查询日志(mysql)
参考 针对mysql的优化,mysql提供了慢查询日志的支持.mysql的慢查询是mysql提供的一种日志记录,它用来记录mysql中响应时间超过阀值的sql语句,某个sql运行时间如果超过设置的阀值 ...