pillow 生成验证码图片 python 3.7

import string
import random

from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont


def GetCodeChar(len):
   """生成长度为len的随机字符串"""

   canUseChar = string.ascii_letters + "0123456789"
   vCode = ""

   for _ in range(len):
      vCode += random.choice(canUseChar)

   return vCode


def GetValidImg():

    # 背景图片生成随机颜色
    colorImg = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))

    img = Image.new(mode="RGB", size=(120, 30), color=colorImg)  # 生成一个随机颜色的图片

    draw = ImageDraw.Draw(img, "RGB")
    font = ImageFont.truetype(r"C:\Windows\Fonts\FZSTK.TTF", 25)

    vCode = GetCodeChar(4)

    for _ in range(len(vCode)):
        draw.text([5+_*30, 4], vCode[_], (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), font=font)  # 把每个字符以各自的随机颜色绘制到图片的相应位置。

    del draw

        # img.show()  显示验证码图片

        # img.save("path")   保存图片

        """

       把图片写入内存

       import io

       f = io.BytesIO()

       img.save(f, "png")

       print(buf.getvalue())

       """       

 

参考:https://www.cnblogs.com/eric_yi/p/7867676.html

你可能感兴趣的:(pillow 生成验证码图片 python 3.7)