基于python使用Pillow做動態(tài)圖在圖中生成二維碼以及圖像處理
1.什么是Pillow
首先我們需要了解一下PIL(Python Imaging Library),它是Python2中非常強大的圖像處理標(biāo)準(zhǔn)庫,但只支持到Python2.7。Pillow是在PIL的基礎(chǔ)上創(chuàng)建了兼容的版本,支持最新Python 3.x,又加入了許多新特性。
安裝:
pip install pillow
其中Image是pillow庫的一個常用的模塊,提供了很多圖片處理的方法。
2.pillow圖像處理的簡單使用
圖片信息顯示
from PIL import Image # 操作圖片的類型
?
?
# 加載圖片
image = Image.open('test1.jpg')
?
?
# 打開圖片
# image.show()
?
# 查看圖像大小(寬度,高度)(6621, 4414)
print(image.size)
?
# # 獲取模式
print(image.mode) # RGB
#
# # 顯示的文件的格式 JPEG
print(image.format)
#
# # 圖片的詳細(xì)信息{'jfif': 257, nsity': (72, 72......),?
print(image.info)
#
# # 保存為另一張圖片(可以更改圖片的格式)
image.save('test2.bmp')修改圖片尺寸
from PIL import Image, ImageFilter
?
# 讀取圖片
image = Image.open('test.jpg')
print(image.size)
# 修改圖片的尺寸,以像素為單位)以二元組表示:(寬度,高度)
image1 = image.resize((image.size[0]//3, image.size[1]//3))
#
image1.show()
# #
# 保存下來
image1.save('test.jpg')裁剪旋轉(zhuǎn)圖片
from PIL import Image, ImageFilter
?
# 讀取圖片
image = Image.open('test1.jpg')
# 裁剪圖片
# 設(shè)置一個邊緣間距[left, upper, right, lower] 左上角和右下角
image1 = image.crop(box=(0, 0, 2000, 2000)) # 600 * 336
image1.show()
# 圖片旋轉(zhuǎn)
image2 = image.rotate(45)
image2.show()為圖片添加水印
可以為一張圖片加上二維碼:
from PIL import Image
?
# 讀取圖片
image = Image.open('test.jpg')
?
# 讀取粘貼的圖片
paste_image = Image.open('erweima.jpg')如果需要粘貼的圖片較大,可以通過resize()修改一下尺寸
image.paste(paste_image) # 默認(rèn)把圖片粘貼到左上角 image.show()

from PIL import Image
?
# 讀取圖片
image = Image.open('test.jpg')
?
# 讀取粘貼的圖片
paste_image = Image.open('erweima.jpg')
# 也可以指定需要粘貼的位置 設(shè)置二維碼位置為右下角
position = (image.size[0] - paste_image.size[0], image.size[1] - paste_image.size[1])
image.paste(paste_image,position)
image.show()
image.save("syzp.jpg")
生成gif圖片
from PIL import Image
?
images = []
for i in range(5):
? ? im = Image.open('mkgif/{}.png'.format(i + 1))
? ? images.append(im)
images[0].save("test.gif", save_all=True, loop=True, append_images=images[1:], duration=500)

上面是pillow的一些簡單使用感興趣的鐵汁萌可以自己動手試試看哦!
到此這篇關(guān)于基于python使用Pillow做動態(tài)圖在圖中生成二維碼以及圖像處理的文章就介紹到這了,更多相關(guān)Pillow做動態(tài)圖在圖中生成二維碼以及圖像處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Python實現(xiàn)斐波那契數(shù)列的方法實例
這篇文章主要給大家介紹了關(guān)于如何利用Python實現(xiàn)斐波那契數(shù)列的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
TFRecord格式存儲數(shù)據(jù)與隊列讀取實例
今天小編就為大家分享一篇TFRecord格式存儲數(shù)據(jù)與隊列讀取實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
Python導(dǎo)入父文件夾中模塊并讀取當(dāng)前文件夾內(nèi)的資源
這篇文章主要給大家介紹了關(guān)于Python導(dǎo)入父文件夾中模塊并讀取當(dāng)前文件夾內(nèi)資源的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
使用Python實現(xiàn)屏幕錄制與鍵盤監(jiān)聽功能
在Python中,我們可以借助多個強大的庫來實現(xiàn)豐富的功能,比如屏幕錄制和鍵盤監(jiān)聽,今天,我們將通過結(jié)合PIL、OpenCV、pynput以及threading等庫,來實現(xiàn)一個簡單的屏幕錄制工具,該工具能夠通過監(jiān)聽鍵盤事件來控制錄制的開始與結(jié)束,需要的朋友可以參考下2024-12-12
Python基礎(chǔ)語法(Python基礎(chǔ)知識點)
這篇文章主要介紹了Python基礎(chǔ)語法(Python基礎(chǔ)知識點),需要的朋友可以參考下2016-02-02
Python實現(xiàn)讀取csv文件并進(jìn)行排序
這篇文章主要為大家詳細(xì)介紹了一個python簡單案例并進(jìn)行代碼展示,本文的案例是利用pandas庫實現(xiàn)讀取csv文件并按照列的從小到大進(jìn)行排序,需要的可以參考一下2023-02-02

