码迷,mamicode.com
首页 > 编程语言 > 详细

python学习之PIL模块基础功能

时间:2018-05-23 00:10:48      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:import   直线   imp   行编辑   get   基础   包含   copy   名称   

Image主要是打开图片后,对图片进行编辑,主要有以下一些常用功能:

1、读取并显示图片:

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
img.show()

 

2、显示图片大小:

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
print(img.size)

 

3、把图片旋转40度并显示:

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
img.rotate.show()

 

4、显示图片名称(包含路径):

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
print(img.filename)

 

5、图片缩小一倍(大概是这么算法):

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
img.thumbnail((img.size[0]/2,img.size[1]/2))

 

6、图片的像素点的缩放:

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
img_new = Image.eval(img,lambda x:x*2)
img_new.show()

 

7、图片合成或融合:

from PIL import Image

#img1和img2大小要一样,并且其一为透明的,否则只能看到一个图片 PIL.image.alpha_composite(img1,img2)
#alpha表示透明度
PIL.image.blend(im1,im2,alpha)
PIL.Image.composite(im1,im2,mask)

 

8、创建并保存图片:

from PIL import Image

#使用RGB模式创建一个黑色的图形(还有L和RGBA模式)
img = Image.new(‘RGB‘,(x,y),(0,0,0))
#L模式创建图形
img = Image.new(‘L‘,(x,y),255)
#RGBA模式创建图形
img = Image.new(‘RGBA‘,(x,y),(0,0,0,255))
img.show()
img.save(‘img.png‘)
#查看模式
print(img.mode)

 

9、将图片黑化(灰化):

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
img.convert("L").show()

 

10、图片的复制:

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
#这里也可以直接赋值
#img1 = img img1 = img.copy()
img1.show()

 

11、获取对应坐标的像素:

from PIL import Image

img = Image.open("H:\\salary.png",‘r‘)
print(img.getpixel(x,y))

 

12、粘贴一个图片到另外一个图片上:

from PIL import Image

#俩个图片的mode要一致,不一致可以用convert转换 img1 = Image.open("H:\\salary.png",‘r‘)
img2 = Image.open("H:\\pig.png",‘r‘)
img1.paste(img2,(50,15))
img1.show()

 

13、在给定图片上划直线:

from PIL import Image
from PIL import ImageDraw img = Image.open("H:\\salary.png",‘r‘)
draw = ImageDraw.Draw(img)
#传入俩个元祖参数,第一个是直线的俩端点坐标,另外一个是RGB
draw.line((22,43,99,11),(150,150,150))
img.show()

 

14、在给定图片上写文字:

from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont img = Image.open("H:\\salary.png",‘r‘)
draw = ImageDraw.Draw(img)
font = ImageFont.truetype(‘segoeuib.ttf‘,20)
#传入4个参数:文字开始坐标,文字,颜色以及字体(字体可以不传入,使用默认字体)
draw.text((50,60),‘Hello,world‘,(140,255,166),font = font)
img1.show()

 

python学习之PIL模块基础功能

标签:import   直线   imp   行编辑   get   基础   包含   copy   名称   

原文地址:https://www.cnblogs.com/watertaro/p/9074453.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!