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 ...
随机推荐
- 1111 WordReplace
#include<iostream> #include<string> using namespace std; int main() { string sa,sb,s; wh ...
- 设计模式——观察者模式(C++实现)
#include <iostream> #include <vector> #include <algorithm> #include <iterator&g ...
- springMvc(一)
SpringMvc 1. 核心:DispatcherServlet 1.1作用:负责拦截请求并分派给相应的处理器处理 1.2配置DispatcherServlet(web.xml) 2.配置处理器映射 ...
- EOS 的世界里可能再也没有小偷了
EOS 针对以下两种情况设计了应急措施: 1. 账户被盗(私钥被盗或有权限的其他账户被盗) 2. 账户遗失(私钥遗失或有权限的其他账户遗失) ## 1.账户被盗 EOS 有可能会强制要求所有账户的 O ...
- C语言第五次博客作业--函数
一.PTA实验作业 题目1:使用函数判断完全平方数 1. 本题PTA提交列表 2. 设计思路 3.本题调试过程碰到问题及PTA提交列表情况说明. 部分正确 :将else的情况放入for循环内,导致循环 ...
- MongoDb进阶实践之二 如何在Windows上配置MongoDB
一.引言 上一篇文章,我介绍了如何在Linux系统上安装和配置MongoDB,其实都不是很难,不需要安装和编译,省去了Make && Make Install 命 ...
- 【Python】 迭代器&生成器
迭代器 任何一个类,只要其实现了__iter__方法,就算是一个可迭代对象.可迭代对象的__iter__方法返回的对象是迭代器,迭代器类需要实现next方法.一般来说,实现了__iter__方法的类肯 ...
- 总结linux路由技术
Linux系统的route命令用于显示和操作IP路由表,要实现两个不同的网段之间的通信,需要一台连接两个网络的路由器,或者同时连接位于两个网络的网关来实现. 在Linux系统中,设置路由通常是为了解决 ...
- 浅谈new/delete和malloc/free的用法与区别
每个程序在执行时都会占用一块可用的内存空间,用于存放动态分配的对象,此内存空间称为自由存储区或堆. 一.new和delete用法 如下几行代码: int *pi=new int; int *pi=ne ...
- 使用.NET开发AutoCAD——设计师不做画图匠(一)
(一)前言--如何避免加班那些事 我是谁?我是一名工程设计师,有点"不务正业",在工作之余长期从事软件开发工作,开发了公路铁路行业广泛应用的设计软件.说正题之前,聊聊加班那些事.话 ...