pillow是python的图像处理标准库_详解Python图像处理库Pillow常用使用方法

pil(python image library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。

其官方主页为:pil。 pil历史悠久,原来是只支持python2.x的版本的,后来出现了移植到python3的库pillow,pillow号称是friendly fork for pil,其功能和pil差不多,但是支持python3。

pil(python imaging library)是python一个强大方便的图像处理库,只支持到python2.7。

pillow是pil的一个派生分支,在python3标准库中用pillow代替pil。

pillow官网:

下面是使用例子,用法可见代码注释。

from pil import image,imagefilter,imagegrab,imagedraw,imagefont

# 创建图片:宽800*高600,红色

imnew = image.new('rgb',(800,600),(255,0,0))

# 显示图片

#imnew.show()

# 抓取屏幕

imgrab = imagegrab.grab()

imgrab.save('grab.jpg', 'jpeg')

# 打开图片

im = image.open('1.jpg')

# 复制图片

im1 = im.copy()

im2 = im.copy()

im3 = im.copy()

im4 = im.copy()

im5 = im.copy()

im6 = im.copy()

im7 = im.copy()

# 获得图片宽高:

w, h = im.size

print('图片宽高:{} * {}'.format(w, h))

# 缩略图(图片不会被拉伸,只能缩小)

im.thumbnail((w//2, h//2))

im.save('1_thumbnail.jpg', 'jpeg')

# 缩放(图片可能会被拉伸,可缩小也可放大)

im1 = im1.resize((w//2, h//2))

im1.save('1_resize.jpg', 'jpeg')

# 模糊图片

im2 = im2.filter(imagefilter.blur)

im2.save('1_blur.jpg', 'jpeg')

# 旋转图片,逆时钟旋转45度

im3 = im3.rotate(45)

im3.save('1_rotate.jpg', 'jpeg')

# 图片转换:左右转换 flip_left_right,上下转换 flip_top_bottom

im4 = im4.transpose(image.flip_left_right)

im4.save('1_transpose.jpg', 'jpeg')

# 图片裁剪

box = (200,200,400,400) #左上角(0,0),4元组表示坐标位置:左、上、右、下

im5 = im5.crop(box)

im5.save('1_crop.jpg', 'jpeg')

# 图片上添加文字

draw = imagedraw.draw(im6)

#truetype设置字体、文字大小

#stxingka.ttf华文行楷 simkai.ttf 楷体 simli.ttf 隶书

font = imagefont.truetype("c:\\windows\\fonts\\stxingka.ttf", 20)

draw.text((100,100), ('hello word \n你好,世界'), fill='#0000ff', font=font)

im6.save('1_drawtext.jpg', 'jpeg')

# 图片上添加图片(粘贴图片)

imtmp = image.new('rgb',(30,30),'blue')

im7.paste(imtmp, (50,50)) #第2个参数为坐标

im7.save('1_paste.jpg','jpeg')

# 图片横向拼接:拼接上面im6、im7(两张图片大小一样)

im6width, im6height = im6.size

imhorizontal = image.new('rgb', (im6width * 2, im6height))

imhorizontal.paste(im6, (0,0))

imhorizontal.paste(im7, (im6width,0))

imhorizontal.save('1_horizontal.jpg', 'jpeg')

# 图片竖向拼接:拼接上面im6、im7

imvertical = image.new('rgb', (im6width, im6height*2))

imvertical.paste(im6, (0,0))

imvertical.paste(im7, (0,im6height))

imvertical.save('1_vertical.jpg', 'jpeg')

总结

以上所述是小编给大家介绍的python图像处理库pillow常用使用方法,希望对大家有所帮助

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值