一、Pillow库的旋转图片方法:
from PIL import Image
img=Image.open('./原图.png')
img=img.rotate(30)
img.show()
二、翻转图片方法
from PIL import Image
img=Image.open('./原图.png')
img = img.transpose(Image.FLIP_LEFT_RIGHT)
img.show()
print("翻转图片")
三、色彩转换
from PIL import Image
img = Image.open('./原图.png')
# 二值图片
# img=self.img.convert('L')
# 灰度图片
# img=self.img.convert('1')
# 8位色彩图片
# img=self.img.convert('P')
# 32位色彩图片
# img=self.img.convert('CMYK')
# 32位
img = img.convert('RGBA')
print("色彩转换")
convert(args)参数代表作用:
1:二值图片
L:灰度图片
P:8位色彩图片
RGB:一般工业颜色标准
CMYK:32位色彩图像
RGBA:32位
以下是集成上面这些代码及方法,想优化的小伙伴自行优化噢
from PIL import Image,ImageDraw,ImageFont
class Img(object):
def __init__(self):
self.img=Image.open('原图.jpg')
# 左右旋转图片
def RL(self):
# 左右旋转FLIP_LEFT_RIGHT
img = self.img.transpose(Image.FLIP_LEFT_RIGHT)
self.showImg(img)
num=int(input("要保存吗? 1.是 2.否"))
if num==1:
# 把旋转图片保存
name = "旋转图片"
self.save(img, name)
else:
return None
# 色彩空间转换
def Conver(self):
# 二值图片
# img=self.img.convert('L')
# 灰度图片
# img=self.img.convert('1')
# 8位色彩图片
# img=self.img.convert('P')
# 32位色彩图片
# img=self.img.convert('CMYK')
# 32位
img=self.img.convert('RGBA')
self.showImg(img)
num = int(input("要保存吗? 1.是 2.否"))
if num == 1:
# 把旋转图片保存
name = "色彩图片"
self.save(img, name)
else:
return None
# 给图片添加文字
def writeWord(self):
draw_img=ImageDraw.Draw(self.img)
# 加载字体文件
Tfont=ImageFont.truetype(font='arial.ttf',size=45,encoding='utf-8')
draw_img.text((10,10),"你好!",fill='red',font=Tfont)
img=self.img
self.showImg(img)
num = int(input("要保存吗? 1.是 2.否"))
if num == 1:
# 把旋转图片保存
name = "旋转图片"
self.save(img, name)
else:
return None
#显示图片
def showImg(self,img):
img.show()
#保存图片
def save(self,img,name):
img.save('%s.png'%name,'png')
def run(self):
print("1.图片左右翻转并显示 2.色彩空间转换并保存 3.给字体添加文字 ")
num=int(input("您想要实现什么功能:"))
if num==1:
self.RL()
if num==2:
self.Conver()
if num==3:
self.writeWord()
if __name__ == '__main__':
Run=Img()
Run.run()