Pillow

安裝Pillow

pip install pillow

操作圖像

from PIL import Image

im = Image.open('test.jpg')
w, h = im.size
print('Original image size: %sx%s' % (w, h))
# 縮放到50%:
im.thumbnail((w//2, h//2))
print('Resize image to: %sx%s' % (w//2, h//2))
im.save('thumbnail.jpg', 'jpeg')
# 應(yīng)用模糊濾鏡:
im2 = im.filter(ImageFilter.BLUR)
im2.save('blur.jpg', 'jpeg')

其他功能如切片、旋轉(zhuǎn)、濾鏡、輸出文字、調(diào)色板等一應(yīng)俱全。

生成驗證碼圖片

from PIL import Image, ImageDraw, ImageFont, ImageFilter

import random

# 隨機(jī)字母:
def rndChar():
    return chr(random.randint(65, 90))

# 隨機(jī)顏色1:
def rndColor():
    return (random.randint(64, 255), random.randint(64, 255), random.randint(64, 255))

# 隨機(jī)顏色2:
def rndColor2():
    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))
# 創(chuàng)建Font對象:
font = ImageFont.truetype('Arial.ttf', 36)
# 創(chuàng)建Draw對象:
draw = ImageDraw.Draw(image)
# 填充每個像素:
for x in range(width):
    for y in range(height):
        draw.point((x, y), fill=rndColor())
# 輸出文字:
for t in range(4):
    draw.text((60 * t + 10, 10), rndChar(), font=font, fill=rndColor2())
# 模糊:
image = image.filter(ImageFilter.BLUR)
image.save('code.jpg', 'jpeg')

我們用隨機(jī)顏色填充背景,再畫上文字,最后對圖像進(jìn)行模糊,得到驗證碼圖片如下:


0014076720724832de067ce843d41c58f2af067d1e0720f000.jpg
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • “一個人就是他整天想到的東西。你專注什么,就會得到什么。” ——愛默生 01 現(xiàn)在最火的電影,無疑是《戰(zhàn)狼2》。 ...
    李星辰1314閱讀 641評論 0 2
  • 她追著外國的劇,聽著外國的歌,你說你多么牛b,有誰不隨聲附和/祖國,祖國,為何此時,你如此沉默/他玩著外國的手機(jī),...
    狗奴才樂隊閱讀 167評論 0 0

友情鏈接更多精彩內(nèi)容