使用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

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