1. 程式人生 > >部落格系統(其一)

部落格系統(其一)

驗證碼功能:

 

def get_img(request):
    import random
    def get_random_img():
        return (random.randint(0,255),random.randint(0,255),random.randint(0,255))

    from PIL import Image,ImageDraw,ImageFont
    img = Image.new("RGB",(270,40),color=get_random_img())
    #方式二
    # with open('valid_code.png','wb') as f:
# img.save(f) # # with open('valid_code.png','rb') as f: # data = f.read() from io import BytesIO draw = ImageDraw.Draw(img) chandan_ttf = ImageFont.truetype("static/font/chandan.ttf",size=32) for i in range(0,5): num = str(random.randint(0,9)) #
生成隨機數字 upper_alpha = chr(random.randint(65,90)) #生成隨機大寫字母 low_alpha = chr(random.randint(97,122)) #生成隨機小寫字母 now_char = random.choice([num,upper_alpha,low_alpha]) #使用隨機列表從中選擇 draw.text((i*50,5),now_char,get_random_img(),font=chandan_ttf) #draw.text(xy座標,寫的內容text,背景顏色,字型ttf)
f = BytesIO() img.save(f,"png") data = f.getvalue() return HttpResponse(data)