偶尔在github在看到了的python的练习题感觉挺有意思的,下面是它的链接。有时间有能力希望可以将它全部做完。
第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。
- 安装PIL库,
在linux下,可以用下面的方法
wget http://effbot.org/media/downloads/Imaging-1.1.7.tar.gz
tar -zxvf Imaging-1.1.7
cd Imaging-1.1.7
python setup.py build_ext -i #用来进行安装前的检查
进入目录vim setup.py #修改setup.py
TCL_ROOT = “/usr/lib64/”
JPEG_ROOT = “/usr/lib64/”
ZLIB_ROOT = “/usr/lib64/”
TIFF_ROOT = “/usr/lib64/”
FREETYPE_ROOT = “/usr/lib64/”
LCMS_ROOT = “/usr/lib64/”
python setup.py install#执行安装命令
windows下就可以用下面的链接下载,进行安装
http://www.lfd.uci.edu/~gohlke/pythonlibs/
也可以使用pip install PIL
- 代码
from PIL import ImageDraw,ImageFont,Image
import random
import os
def paint(img):
num = int(1000*random.random())
#产生一个随机数
print img.size
#查看图片的尺寸
draw = ImageDraw.Draw(img)
Font = ImageFont.truetype("msyh.ttf",80)
draw.text((230,430),str(num),fill=(255,0,0),font=Font)
#在图片上写上随机产生的数字,fill表示字体,font是字体
#(230,430)是在图片上的坐标,最上角是(0,0)右下角是图片的尺寸 #大小,相当于坐标系的第四象限,
img = img.resize((img.size[0]/2,img.size[1]/2))
#将图片重新设置大小
img.save('F:\\Python\\img\\'+str(num)+r'.jpg')
#图片保存,使用随机数作为后缀保存,避免重复
img.show()
#显示图片
if __name__ =="__main__":
img = Image.open(r'F:\Python\img\1.jpg')
#打开源文件
paint(img)
原 图:
效果图:
修改图:
( 写于2016年3月30日,http://blog.csdn.net/bzd_111)