组合两种颜色以创建新颜色无法正确保存



我正在尝试使用枕头将红色和蓝色组合在一起以创建紫色,这是我的代码。

from PIL import Image
red = Image.open('red.jpg')
blue = Image.open('blue.jpg')
red.putalpha(120)
blue.putalpha(120)
blue.paste(im=red, box=(0,0), mask=red)
blue.show()
blue.save('res.png')

然而,当我要求它给我看图片时,我看到了它一秒钟,然后它消失了。我尝试将其保存到文件中,但它似乎也确实存在,尽管该文件占用了内存,但显示该文件中有一些内容,但它只是不可见

如果你想组合颜色,你需要制作:

  • 底层(第 0 层(具有 100% 的不透明度,
  • 第二层(第 1 层(具有 50% 的不透明度,
  • 第三层(第 2 层(的不透明度为 33.33%

通常,第 N 层需要不透明度1/(N+1)不透明度。

因此,由于您有 2 层,因此您的不透明度应为 100% 和 50%。

剑桥有一个很好的彩色教程。