最近碰到要处理人物立绘的问题。。由于工作量不算小,而且重复劳动很多,就想用程序来解决,python的PIL模块就包含了很多实用的模块,下面展示一下个人应用的接口。
from PIL import Image
1、将一个图片的透明部分应用到另一个图片
emmm,这个算是有局限性吧,应用范围不广,但是批量修改立绘的时候抠图非常省力,简略带过一下
def getAlpha(filename):
pic = Image.open(filename)
r,g,b,a = pic.split()
return a
def setAlpha(pic, alpha):
pic.putalpha(alpha)
return pic
getAlpha()返回文件的透明(Alpha)通道,setAlpha()将这个通道应用到另一张图片上,注意setAlpha的图片必须是RGBA模式(拥有透明通道)
2、等比例放缩图片
def consResize(pic, num, mode):
w,h = pic.size
if mode=='w':
h = int(num*h/w)
w = num
pic = pic.resize((w,h))
if mode=='h':
w = int(num*w/h)
h