from PIL import Image
im = Image.open(r'd:\test2.png')
r, g, b, a = im.split()
im = Image.merge("RGB", (r, g, b))
im.save(r'D:\Python_Programming.jpg')
===============================
# coding:utf-8 from PIL import Image, ImageDraw, ImageFont def add_text_to_image(image, text):
font = ImageFont.truetype('C:\Windows\Fonts\STXINGKA.TTF', 36) # 添加背景
new_img = Image.new('RGBA', (image.size[0] * 3, image.size[1] * 3), (0, 0, 0, 0))
new_img.paste(image, image.size) # 添加水印
font_len = len(text)
rgba_image = new_img.convert('RGBA')
text_overlay = Image.new('RGBA', rgba_image.size, (255, 255, 255, 0))
image_draw = ImageDraw.Draw(text_overlay) for i in range(0, rgba_image.size[0], font_len * 40 + 100):
for j in range(0, rgba_image.size[1], 200):
image_draw.text((i, j), text, font=font, fill=(0, 0, 0, 50))
text_overlay = text_overlay.rotate(-45)
image_with_text = Image.alpha_composite(rgba_image, text_overlay) # 裁切图片
image_with_text = image_with_text.crop((image.size[0], image.size[1], image.size[0] * 2, image.size[1] * 2))
return image_with_text if __name__ == '__main__':
img = Image.open(r"d:\ww.jpg")
im_after = add_text_to_image(img, u'群主是个大流X')
im_after.save(r'd:\ww.png')
彩色转黑白
from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.cm as cm #cm是colormap的缩写
image_gray=Image.open('D:/ww.png').convert("L")
data=np.array(image_gray) #在显示灰度图像时array()方法将图像转换成Numpy的数组对象,图片得以显式,否则会出现错误
plt.imshow(data,cmap=cm.gray)# cmap:代表颜色图谱,默认绘制为RGB(A)颜色空间。
plt.savefig("d:/ww1.png")
plt.show()
裁剪
from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
image=Image.open('D:/ww.jpg')
box=(100,100,400,400)
region=image.crop(box)
data=np.array(region)
plt.imshow(data)
plt.show()
旋转
from PIL import Image
import matplotlib.pyplot as plt
image=Image.open('D:/ww.png')#读取图像
plt.imshow(image.rotate(180))#逆时针旋转180度
plt.show()#需要调用show()方法,不然图像只会在内存中而不显示出来