利用PIL生成随机验证码

电玩女神 2022-05-23 10:51 275阅读 0赞
  1. import os
  2. from django.test import TestCase
  3. from django.conf import settings
  4. from PIL import Image, ImageDraw, ImageFont, ImageFilter
  5. import random
  6. # 随机字符 chr转成ASCII字符,这里设置的范围是A-Z
  7. def rnd():
  8. return chr(random.randint(65,90))
  9. #随机颜色,这里采用的RGB的模式,当然也可以才ARGB的模式
  10. def rndColor():
  11. return (random.randint(64,255),random.randint(64,255),random.randint(64,255))
  12. # 再定义一种随机颜色
  13. def rndColor2() return (random.randint(32,127),random.randint(32,127),random.randint(32,127)) # 定义下将要显示的图片的大小 width = 60*4 height = 60 image = Image.new("RGB",(width,height),(255,255,255)) #创建Font对象 font = ImageFont.truetype('VerasSe.ttf', 36) # 创建Draw对象 draw = ImageDraw.Draw(image) #填充每个像素 for x in range(width):
  14. for y in range(height):
  15. draw.point((x,y),fill=rndColor())
  16. #在image上显示文字
  17. for t in range(4):
  18. drawText((60*t+10,10),rndChar(), font=font,fill=rndColor2())
  19. #让图片变的模糊
  20. image = image.filter(ImageFilter.BLUR)
  21. image.save('test.jpg', 'JPEG')

发表评论

表情:
评论列表 (有 0 条评论,275人围观)

还没有评论,来说两句吧...

相关阅读