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生成单词壁纸的更多相关文章

  1. 使用python生成词云

    什么是词云呢? 词云就是一些关键词组成的一个图片.大家在网上经常看到,下面看一些例子: 那用python生成一个词云的话怎么办呢,首先要有一些词,咱们随便找个吧,用see you again的歌词好了 ...

  2. JavaScript 解析 Django Python 生成的 datetime 数据 时区问题解决

    JavaScript 解析 Django/Python 生成的 datetime 数据 当Web后台使用Django时,后台生成的时间数据类型就是Python类型的. 项目需要将几个时间存储到数据库中 ...

  3. 【python】【转】Python生成随机数的方法

    如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文 ...

  4. Python生成随机数的方法

    这篇文章主要介绍了Python生成随机数的方法,有需要的朋友可以参考一下 如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与 ...

  5. Python 生成的页面中文乱码问题

    第一 保证 程序源文件里的中文的编码格式,如我们把 源文件的编码设置成utf8的. reload(sys) sys.setdefaultencoding('utf-8') 第二, 告诉浏览器,我们须要 ...

  6. 如何使用python生成xml

    最近要用python生成一个xml格式的文件.因为有一些内容是中文,原来的xml文件中使用了CDATA 的部分. 而之前的python程序所用的库中没有 创建这个区域的方法.无奈研究了大半天. 最后用 ...

  7. python生成随机图形验证码

    使用python生成随机图片验证码,需要使用pillow模块 1.安装pillow模块 pip install pillow 2.pillow模块的基本使用 1.创建图片 from PIL impor ...

  8. Python 生成随机验证码

    Python生成随机验证码  Python生成随机验证码,需要使用PIL模块. 安装: 1 pip3 install pillow 基本使用 1. 创建图片 1 2 3 4 5 6 7 8 9 fro ...

  9. Python生成随机验证码

    Python生成随机验证码,需要使用PIL模块. 安装: pip3 install pillow 基本使用 1.创建图片 from PIL import Image img = Image.new(m ...

随机推荐

  1. Hive数据仓库笔记(三)

    Joins: Inner  joins: hive> SELECT * FROM sales; Joe 2 Hank 4 Ali 0 Eve 3 Hank 2 hive> SELECT * ...

  2. ubuntu16.04下安装windows10(傻瓜式)

    参考如下博文,首先利用ubuntu的16.04的启动U盘,对原有的系统的磁盘分出一个区来,并使用gparted工具格式化为nyfs格式 http://blog.csdn.net/oct11/artic ...

  3. java正则匹配并提取字串

    Pattern p = Pattern.compile("\\(.*\\)"); Matcher m = p.matcher("1.2.0(23)"); if( ...

  4. 功能性AI术语表

    算法:一套计算机要遵循的指令.一个算法可以是一个简单的单步程序也可以是一个复杂的神经网络,但是通常被用来指一个模型. 人工智能:这是一个统称.广义上说,软件意味着模仿或取代人类智能的各个方面.人工智能 ...

  5. 关于数据库的左,右,内,外连接,Union和Union all---------笔记

    1.左连接 select a.filed1,a.filed2,b.filed1 from a (左表) left join b(右表) on a.commonfiled = b.commonfiled ...

  6. java基础系列--SecurityManager入门(转)

    转载作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/yiwangzhibujian/p/6207212.html 一.文章的目的 这是一篇对Java安全管理器入门的文 ...

  7. Vue解析四之注册变量

    判断监听的变量,如果undefined可以用$set来注册一个变量. 另外click可以是表达式,不一定必须是一个方法.

  8. js面向对象的理解

    ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是,ECMAScrip ...

  9. 听翁恺老师mooc笔记(14)--格式化的输入与输出

    关于C语言如何做文件和底层操作: 文件操作,从根本上说,和C语言无关.这部分的内容,是教你如何使用C语言的标准库所提供的一系列函数来操作文件,最基本的最原始的文件操作.你需要理解,我们在这部分所学习的 ...

  10. 总结随笔(Beta)

    听说 -- beta冲刺总结 beta冲刺成员名单 姓名 学号 负责方向 个人主页 周龙荣 031402543 前端页面.跳转 http://www.cnblogs.com/ZHOULR/ 李家鹏 0 ...