python生成单词壁纸

时间:2024-01-23 09:44:45

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

 

posted on 2018-04-08 23:17 所有人都 阅读(...) 评论(...) 编辑 收藏