我正在尝试使用以下方法将图像粘贴到另一个图像上:
original = Img.open('original.gif')
tile_img = Img.open('tile_image.jpg')
area = 0, 0, 300, 300
original.paste(tile_img, area)
new_cropped.show()
除粘贴的图像的颜色变为灰色外,此方法有效。
之前的图片:
后图:
是否有一种简单的方法来保留相同的粘贴图像颜色?我曾尝试阅读其他问题和文档,但找不到有关如何执行此操作的任何解释。
非常感谢
答案 0 :(得分:1)
我相信所有的GIF图像都是灰色的-也就是说,它们不是在每个位置都包含RGB三元组,而是在RGB三元组调色板中包含索引。这样可以节省空间并提高下载速度-代价是每个图像仅允许256种唯一颜色。
如果要将GIF(或灰化的PNG文件)视为RGB,则需要确保在打开时将其转换为RGB,否则将使用调色板索引而不是RGB三重奏。
尝试将第一行更改为:
original = Img.open('original.gif').convert('RGB')