我通过ImageDraw模块创建了一个绘图,但我没有校准此绘图的不透明度。
我想说的是我使用ImageDraw来创建渐变映射。然后,我使用ImageChops的功能与原始照片结合。代码没有任何问题。我的代码工作,但创建的渐变映射具有非常密集的颜色。我想校准那种不透明度。我的问题是。
之后的代码结构
class Affects(object):
def __init__(self,rect,type):
...
#'poppy' : [(252,170,11),(205,62,110),(129,2,45)]
self.img = PIL.Image.new("RGB", (self.imgx, self.imgy), (255,255,255))
self.draw = PIL.ImageDraw.Draw(self.img)
...
def do_chops(self,main,*args):
if args[0] == 'blend' or args[0] == 'composite':
return getattr(PIL.ImageChops,str(args[0]))(main,self.img,args[1])
else:
return getattr(PIL.ImageChops,str(args[0]))(main,self.img)
....
def poppy(self,main,*args):
grd = libgrd.Gradient(self.maps['poppy'],self.rect)
grd.draw(self.type,self.draw)
return self.do_chops(main,*args)
class MyApp(object):
def __init__(self):
self.img = PIL.Image.open('iam.jpg').resize((640,640))
...
def __poppy(self):
Affects(libgrd.Rect(0, 0, 640, 640),'hz').poppy(self.img,'lighter').save('test.jpg')
我该怎么做这个操作?
解
class Affects(object):
...
def poppy(self,main,*args):
...
enh = ImageEnhance.Brightness(self.img)
self.img = enh.enhance(0.7)
...
答案 0 :(得分:0)
解决方案如下;
class Affects(object):
...
def poppy(self,main,*args):
...
enh = ImageEnhance.Brightness(self.img)
self.img = enh.enhance(0.7)
...