python PIL框架生成字母验证码图片

来源:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320027235877860c87af5544f25a8deeb55141d60c5000
廖雪峰的官方网站

from PIL import Image, ImageDraw, ImageFont, ImageFilter

import random

# 随机字母
def randomChar():
    return chr(random.randint(65, 90))

# 随机颜色1
def randomColor():
    return (random.randint(64, 255), random.randint(64, 255), random.randint(64, 255))

# 随机颜色2
def randomColor2():
    return (random.randint(32, 127), random.randint(32, 127), random.randint(32, 127))

# 240 x 60
width = 60 * 4
height = 60
image = Image.new('RGB', (width, height), (255, 255, 255))

# 创建Font对象
font = ImageFont.truetype('Arial.ttf', 36)

# 创建Draw对象
draw = ImageDraw.Draw(image)

# 填充每个像素
for x in range(width):
    for y in range(height):
        draw.point((x, y), fill = randomColor())

# 输出文字
for t in range(4):
    draw.text((60 * t + 10, 10), randomChar(), font = font, fill = randomColor2())

# 模糊
image = image.filter(ImageFilter.BLUR)
image.save('code.jpg', 'jpeg')

利用ImageDraw对图片进行绘制

1526889991095.jpg
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前端知识体系http://www.cnblogs.com/sb19871023/p/3894452.html 前端...
    秋风喵阅读 14,314评论 7 163
  • 作为一个前端程序猿,下面这些站会让你眼前一亮。 amazeui框架组建丰富 http://amazeui.org...
    欧巴冰冰阅读 12,879评论 18 303
  • 曾与你十指相扣,倾慕相对,但直到擦肩而过,我才知道我已离不开你。 转过身来看着你远去的身影,不见在我的眼前,是走,...
    萨芬阅读 1,580评论 0 0
  • 刚上大学的时候遭遇痴情的男孩子表白,既然并没有让我动心,当然是拒绝的。然而男孩子很恳切,声声追问,你不喜欢我哪儿?...
    余香病酒阅读 2,795评论 0 0
  • 终于喜欢上了长沙的阴雨天,省植物园里人少,空气湿润,花儿娇艳,每个园子都丈量了一遍,杜鹃花开得最热闹。 没看够,又...
    周湘泉阅读 1,378评论 0 5

友情链接更多精彩内容