Python 使用pillow合併兩個圖像

from PIL import Image  # pillow 基本上已經是Python平臺上圖像處理標準庫了。他的功能很強大,但API卻很簡單實用。
from io import BytesIO
import requests
'''
常有方法
Image.format 識別圖像格式或來源,如果圖像不是從文件讀取的,值是None
Image.mode 圖像的色彩模式 L灰度圖像 RGB彩色圖像 CMYK出版圖像
Image.size 識別圖像的寬高 單位爲px,返回值是元組類型
im.info 輸出與圖像相關的數據的信息,返回字典類型
Image.open(img_path) 通過文件路徑打開圖像
Image.open(BytesIO(img_bytes)) 通過二進制文件流打開圖像
Image.new(mode,size,color) 使用給定的模式、大小和顏色創建新圖像
Image.show() 展示圖像,會彈出一個展示窗口
Image.resise((size,size)) 調整圖像寬高
Image.rotate(angle) 旋轉圖像
Image.save(filename,format) 保存圖像,filename 圖像名稱或路徑 format 保存模式,默認爲RGB
img1.paste(img2, (10,10)) 將圖像img2粘貼到圖像img1上,並指定位置,默認爲(0,0) 表示在左上點粘貼
'''


img1_url = 'https://nbjice.oss-cn-hangzhou.aliyuncs.com/10-sansheng/202001/9a594e5c-2dca-11ea-a72d-00163e09d976.jpg'
img2_url = 'https://nbjice.oss-cn-hangzhou.aliyuncs.com/10-sansheng/201912/e84203ee-255e-11ea-a72d-00163e09d976.png'

# 通過二進制流讀取圖片
img1=Image.open(BytesIO(requests.get(img1_url).content))
# 改變圖像尺寸
img1 = img1.resize((640, 360))
img2=Image.open(BytesIO(requests.get(img2_url).content))
img2 = img2.resize((180, 180))
# 合併兩個圖像,img2 放到 img1上面 並指定座標
img1.paste(img2, (430, 90))
# 展示圖像
img1.show()
# 將文件保存爲二進制文件流
img1_bytes = BytesIO()  # 創建一個二進制對象 並將圖像內容寫入到二進制對象中 獲得一個二進制圖像文件類型
# 以二進制文件類型保存圖像,並指定圖片類型 當然還可以直接保存爲文件 img1.save('img1.png')
img1.save(img1_bytes, format="PNG")
發佈了264 篇原創文章 · 獲贊 202 · 訪問量 110萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章