使用PIL改變圖像格式及尺寸

1、安裝
$ pip install PIL

2、導入
from PIL import Image
import Image

3、使用
1) 轉換圖像格式
# coding: utf-8

from PIL import Image
p_w_picpath = Image.open('pythonfan.jpg')
p_w_picpath_rgb = p_w_picpath.convert('RGB')
p_w_picpath_rgb.save('pythonfan.gif', 'gif')

> 使用PIL, JPEG文件可能以CMYK模式打開,GIF、不滿256色的PNG、以及BMP文件,可能以調色板模式或者單色模式打開,因此保存前必須使用convert方法進行準換

2)調整圖像尺寸
a. 寬高等比例調整

from PIL import Image

p_w_picpath = Image.open('pythonfan.jpg')
print 'width:%s, height:%s' % (p_w_picpath.size[0], p_w_picpath.size[1])
half_size = (p_w_picpath.size[0]/2, p_w_picpath.size[1]/2)
p_w_picpath.thumbnail(half_size, Image.ANTIALIAS)
p_w_picpath.save('pythonfan_thumbnail.jpg', 'jpeg')

> Image的size屬性保存了圖像的寬高(元組)
> thumbnail函數第一個參數是用於指定圖像的寬高(元組),第二個參數指定過濾器類型:NEAREST、BILINER、BICUBIC、ANTALIAS,其中ANTALIAS爲最高品質。

b. 不等比例調整
from PIL import Image

p_w_picpath = Image.open('pythonfan.jpg')
double_size = (p_w_picpath.size[0]*2, p_w_picpath.size[1])
p_w_picpath_resized = p_w_picpath.resize(double_size, Image.ANTIALIAS)
p_w_picpath_resized.save('pythonfan_double_size.jpg', 'jpeg')
>  resize不同於thumbnail, 返回值生成一個新的Image對象。



轉載自:www.pythonfan.org

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章