該接口的功能主要是通過在原始圖像周圍填充像素的方式來改變圖像的尺寸
接口使用介紹
ImageOps.expand(img,border=300,fill='black')
border :四個border的寬度一致時,border是寬度
ImageOps.expand(img,(4,4,8,8),fill='white')
border說明:
(4,4,8,8) ---> left, top, right and bottom borders.
4--left:表示左上角像素點距最終圖左邊的像素寬度 ---左邊border的寬度
4--top:表示左上角像素點距最終圖上邊的像素寬度 --- 上邊border的寬度
8--right:表示右下角像素點距最終圖右邊的像素寬度 --- 右邊border的寬度
8--bottom:表示右下角像素點距最終圖下邊的像素寬度 --- 下面border的寬度
fill 說明:
可選包括:
'white' , 'black' , 'red' , 'green' , 'blue' , val , (val1, val2, val3)
也就是說可以是一些常見顏色的單詞名稱,也可以是單個數(shù)值(即灰度值), 三通道的值(分別對應(yīng)R, G, B)
代碼示例
from PIL import Image,ImageOps
img = Image.open('demo.jpg')
#print( img.size) # 假設(shè)w = 100, h = 200
img_with_border = ImageOps.expand(img,(4,5,6,7),fill=0)
# img_with_border = ImageOps.expand(img,border=4,fill='white')
#print( img_with_border.size)
# 此時 w_new = w + left + right = 100+4+6=110, h_new = h + top + bottom = 200 + 5 + 7 = 212