from PIL import Image,ImageFont,ImageDraw,ImageFilter
import random
def ranchar():
return chr(random.randint(97,122)) #随机生成小写字母。大写字母是65-90
def rancolor():
return(random.randint(64,255),random.randint(64,255),random.randint(64,255))#随机图片每个像素颜色
def rancolor2():
return(random.randint(64,132),random.randint(64,132),random.randint(64,132))#随机字母颜色
width = 300#图片的长
height = 60#图片的宽
image = Image.new('RGB',(width,height),(255,255,255))#新建图片对象
image.save('1.jpg')#保存图片
image.show()#显示图片
font = ImageFont.truetype('C:\Windows\Fonts\Arial.ttf',38)#创建字体对象
draw = ImageDraw.Draw(image)# 创建Draw对象,把图片传进去
for x in range(width):
for y in range(height):
draw.point((x,y),fill = rancolor())#给每一个像素填充颜色
for i in range(5):
draw.text((60*i+8,8),ranchar(),font = font,fill = rancolor2())#用Draw对象在图片上写入字母
image.save('2.jpg')
image.show()
image = image.filter(ImageFilter.BLUR)#将图片变模糊。
image.save('3.jpg')
image.show()这里面用到的都是PIL库,这个库首先得用pip install pillow命令去安装
输出结果:
本文介绍了一个使用Python的PIL库生成随机字符验证码图片的方法。该方法包括生成随机颜色、随机字母,并将这些元素应用于图片中,同时实现了图片的模糊效果。文章通过具体的代码示例详细解释了每一步的操作。
1333

被折叠的 条评论
为什么被折叠?



