Python pillow库的基本使用(python作业)
1.导入包
pip install pillow # 下载包
from PIL import Image, ImageDraw, ImageFont, ImageFilter
2.导入图片
img = Image.open('img.jpg')
3.实现图片信息的获取(大小,颜色模式,图片的格式)
w, h = img.size
# 图片基本信息的获取
print("图片的宽:{0}px,,高:{1}px".format(w, h))
print("图片的格式:{0}".format(img.format))
print("图片的颜色模式为:{0}".format(img.mode))
# print(img.info)
4.打开图片
img.show()
5.翻转图片
# out = img.transpose(Image.FLIP_LEFT_RIGHT) #图片左右反转
# out = img.transpose(Image.FLIP_TOP_BOTTOM) #图片上下颠倒
out = img.transpose(Image.ROTATE_90) # 图片旋转90度
out.show()
6.裁剪图片
box = (500,500,2600,1200)
im = img.crop(box) # 从图片中提取子矩形
im.show()
7.图片缩放
img = img.resize((w//2, h//2))
img.show()
8.模糊图片
for i in range(10):
img = img.filter(ImageFilter.BLUR)
img.show()
9.转化为8位黑白图片
img2 = img.convert("L")
img2.show()
10.在图片上插入文字
使用font = ImageFont.truetype()来设置字体的格式以及大小;所以要引入ImageFont。字体的格式必须为PC上存在的.ttf字体格式的文件,导入时注意路径。
img1 = img.copy()
draw = ImageDraw.Draw(img1)
# truetype设置字体、文字大小
font = ImageFont.truetype("C:\\Windows\\Fonts\\ALGER.TTF", 160)
draw.text((45, 60), ('Hello Python'), fill='#FFC0CB', font=font)
img1.show()
11.获取某点rgb值
array = []
getx = int(input())
gety = int(input())
for x in range(w):#输出图片对象每个像素点的RBG值到array
for y in range(h):
if y == gety and x == getx:
r, g, b = img.getpixel((x,y))#获取当前像素点RGB值
rgb = (r, g, b)
array.append(rgb)
print(array)