• python基础-第三方模块PIL_绘图,验证码


      PIL:Python Imaging Library,Python平台上图像处理标准库,L功能非常强大,API简单易用.

    一、安装PIL

      可通过 easy_install 、 pip、PIL官方网站下载exe安装包等方法安装

    二、图像操作

      1、缩放操作:

    >>> import Image
    >>> im = Image.open('C:UserswccDesktopdevushka-vzglyad-lico-golovnoy.jpg')
    >>> w,h = im.size
    >>> im.thumbnail((w//2,h//2))    #缩小
    >>> im.save('C:UserswccDesktopdevushka-vzglyad-lico-golovnoysss.jpg')

      2、模糊效果:

    >>> import Image
    >>> import ImageFilter
    >>> im2 = im.filter(ImageFilter.BLUR)
    >>> im2.save('C:UserswccDesktopdevushka-vzglyad-lico-golovnoyaaa.jpg')
    >>>

      3、绘图操作,生成验证码:

    #!/usr/bin/env python
    #coding:utf-8
    
    import Image,ImageDraw,ImageFont,ImageFilter
    import random
    
    #随机字母:
    def rndChar():
        return chr(random.randint(65,90))
    
    #随机颜色1:
    def rndColor():
        return (random.randint(64,255),random.randint(64,255),random.randint(64,255))
    
    #240 x 60:
    width = 60 * 4
    heigh = 60
    image = Image.new('RGB',(width,heigh),(255,255,255))
    #创建font对象:
    font = ImageFont.truetype('Arial.ttf',36)
    #创建Draw对象:
    draw = ImageDraw.Draw(image)
    
    for  x in range(width):
        for y in range(heigh):
            draw.point((x,y),fill=rndColor())
    
    #输出文字:
    for t in range(4):
        draw.text((60 * t + 10,10),rndChar(),font=font,fill=rndColor())
    #模糊:
    image = image.filter(ImageFilter.BLUR)
    image.save('code.jpg','jpeg')

    效果图如下:

    详细了解PIL的强大功能,请请参考PIL官方文档 

  • 相关阅读:
    IDEA下同时使用Git和svn
    IDEA进行activiti-archetype-unittest脚手架的安装
    正则表达式
    关于JS堆栈与拷贝
    按值传递--
    JS---变量、作用域和内存问题
    laod
    待解决
    闭包2
    闭包1
  • 原文地址:https://www.cnblogs.com/xccnblogs/p/5001603.html
Copyright © 2020-2023  润新知