import Image
import ImageDraw
import random
import ImageFont
#定義隨機字符,定義隨機顏色,把隨機顏色填充到畫布上,在畫布上定義隨機字符
#隨機字符方法
def getchar():
if random.randint(0,1):
return chr(random.randint(65, 90))
else:
return str(random.randint(0,9))
#定義隨機顏色
def getcolor():
return (random.randint(0,255), random.randint(0,255), random.randint(0,255),)
#Image.new()
if __name__ == '__main__':
WIDTH =260
HEIGHT = 80
font_list = []
#定義一個圖片背景
im = Image.new(mode="RGB", size = (WIDTH, HEIGHT), color = (255, 255, 255))
#給背景圖加隨機顏色
dr = ImageDraw.Draw(im = im)
#循環遍歷每一個像素點
for x in range(WIDTH):
for y in range(HEIGHT):
dr.point(xy = (x, y), fill = getcolor())
#定義字體
#往圖像上添加隨機字符
x = 20
for i in range(4):
font_list = ["01.TTF", "02.TTF", "03.TTF", "04.TTF", "05.TTF", "06.TTF", "07.TTF"]
font = ImageFont.truetype(font=font_list[random.randint(0, 6)], size=60)
dr.text(xy=(x,10), text=getchar(), font=font, fill=getcolor())
x += 60
im.show()
im.save("驗證碼.png", "PNG")