最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python使用pil生成圖片驗(yàn)證碼的方法

 更新時(shí)間:2015年05月08日 12:37:58   作者:marising  
這篇文章主要介紹了python使用pil生成圖片驗(yàn)證碼的方法,涉及Python操作Image,ImageDraw,ImageFont等模塊的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了python使用pil生成圖片驗(yàn)證碼的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

# -*- coding: utf-8 -*-
#導(dǎo)入三個(gè)模塊
import Image,ImageDraw,ImageFont
import random
import math
'''基本功能'''
#圖片寬度
width = 100
#圖片高度
height = 40
#背景顏色
bgcolor = (255,255,255)
#生成背景圖片
image = Image.new('RGB',(width,height),bgcolor)
#加載字體
font = ImageFont.truetype('FreeSans.ttf',30)
#字體顏色
fontcolor = (0,0,0)
#產(chǎn)生draw對(duì)象,draw是一些算法的集合
draw = ImageDraw.Draw(image)
#畫字體,(0,0)是起始位置
draw.text((0,0),'1234',font=font,fill=fontcolor)
#釋放draw
del draw
#保存原始版本
image.save('1234_1.jpeg')
'''演示扭曲,需要新建一個(gè)圖片對(duì)象'''
#新圖片
newImage = Image.new('RGB',(width,height),bgcolor)
#load像素
newPix = newImage.load()
pix = image.load()
offset = 0
for y in range(0,height):
  offset += 1
  for x in range(0,width):
    #新的x坐標(biāo)點(diǎn)
    newx = x + offset
    #你可以試試如下的效果
    #newx = x + math.sin(float(y)/10)*10
    if newx < width:            
      #把源像素通過偏移到新的像素點(diǎn)
      newPix[newx,y] = pix[x,y]
#保存扭曲后的版本      
newImage.save('1234_2.jpeg')
'''形變一下'''
#x1 = ax+by+c
#y1 = dx+ey+f
newImage = image.transform((width+30,height+10), Image.AFFINE, (1,-0.3,0,-0.1,1,0))
newImage.save('1234_3.jpeg')
'''畫干擾線,別畫太多,免得用戶都看不清楚'''    
#創(chuàng)建draw,畫線用
draw = ImageDraw.Draw(newImage)
#線的顏色
linecolor= (0,0,0)
for i in range(0,15):
  #都是隨機(jī)的
  x1 = random.randint(0,width)
  x2 = random.randint(0,width)
  y1 = random.randint(0,height)
  y2 = random.randint(0,height)
  draw.line([(x1, y1), (x2, y2)], linecolor)      
#保存到本地
newImage.save('1234_4.jpeg')

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 檢測(cè)python爬蟲時(shí)是否代理ip偽裝成功的方法

    檢測(cè)python爬蟲時(shí)是否代理ip偽裝成功的方法

    這篇文章主要介紹了檢測(cè)python爬蟲時(shí)是否代理ip偽裝成功的方法以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。,需要的朋友可以參考下
    2019-07-07
  • python 將print輸出的內(nèi)容保存到txt文件中

    python 將print輸出的內(nèi)容保存到txt文件中

    本文通過代碼給大家介紹了python 將print輸出的內(nèi)容保存到txt文件中,代碼很簡(jiǎn)短,需要的朋友可以參考下
    2018-07-07
  • python本地降級(jí)pip的方法步驟

    python本地降級(jí)pip的方法步驟

    高版本的pip在使用過程中會(huì)出現(xiàn)很多的不兼容問題,而且不留神很容易把pip給升級(jí)了,下面這篇文章主要給大家介紹了關(guān)于python本地降級(jí)pip的方法步驟,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • numpy中的transpose函數(shù)中具體使用方法

    numpy中的transpose函數(shù)中具體使用方法

    本文主要介紹了numpy中的transpose函數(shù)中具體使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • python Selenium 庫的使用技巧

    python Selenium 庫的使用技巧

    這篇文章主要介紹了python Selenium 庫的使用技巧,幫助大家更好的理解和學(xué)習(xí)python Selenium 庫,感興趣的朋友可以了解下
    2020-10-10
  • Python實(shí)現(xiàn)兩種多分類混淆矩陣

    Python實(shí)現(xiàn)兩種多分類混淆矩陣

    這篇文章主要為大家介紹了Python實(shí)現(xiàn)兩種多分類混淆矩陣,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Python利用Turtle繪制哆啦A夢(mèng)和小豬佩奇

    Python利用Turtle繪制哆啦A夢(mèng)和小豬佩奇

    turtle庫是python的基礎(chǔ)繪圖庫,經(jīng)常被用來介紹編程知識(shí)的方法庫,是標(biāo)準(zhǔn)庫之一,利用turtle可以制作很多復(fù)雜的繪圖。本文將為大家介紹通過turtle庫繪制制哆啦A夢(mèng)和小豬佩奇,感興趣的小伙伴可以學(xué)習(xí)一下
    2022-04-04
  • 利用python將?Matplotlib?可視化插入到?Excel表格中

    利用python將?Matplotlib?可視化插入到?Excel表格中

    這篇文章主要介紹了利用python將?Matplotlib?可視化?插入到?Excel?表格中,通過使用xlwings模塊來控制Excel插入圖表,具體詳細(xì)需要的朋友可以參考下面文章內(nèi)容
    2022-06-06
  • Python實(shí)現(xiàn)將json文件中向量寫入Excel的方法

    Python實(shí)現(xiàn)將json文件中向量寫入Excel的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)將json文件中向量寫入Excel的方法,涉及Python讀取、遍歷json格式數(shù)據(jù)及Excel文件寫入相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • python生成圓形圖片的方法

    python生成圓形圖片的方法

    這篇文章主要為大家詳細(xì)介紹了python生成圓形圖片的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01

最新評(píng)論

巴东县| 武乡县| 温泉县| 濮阳市| 玉门市| 佛山市| 合阳县| 崇信县| 榆中县| 陇南市| 南投县| 措美县| 盈江县| 澄迈县| 泽普县| 阿拉善左旗| 恩平市| 江口县| 军事| 万全县| 虹口区| 安新县| 北宁市| 台湾省| 伊吾县| 长沙县| 合水县| 光泽县| 安丘市| 银川市| 临沧市| 宁南县| 泾川县| 石台县| 时尚| 天门市| 贡觉县| 阳西县| 宣化县| 布拖县| 巴林右旗|