PIL简单图像粘贴 - 图像改变颜色

问题描述 投票:1回答:1

我正在尝试将图像粘贴到另一个图像上,使用:

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()

除了粘贴的图像将颜色更改为灰色外,此方法有效。

之前的图片:

enter image description here

之后的图片:

enter image description here

是否有一种简单的方法来保留相同的粘贴图像颜色?我已经尝试阅读其他问题和文档,但我找不到任何解释如何执行此操作。

非常感谢

python-imaging-library
1个回答
1
投票

我相信所有GIF图像都是palettised - 也就是说,它们不是在每个位置包含RGB三元组,而是包含RGB三元组调色板的索引。这样可以节省空间并提高下载速度 - 每个图像只允许256种独特颜色。

如果要将GIF(或palettised PNG文件)视为RGB,则需要确保在打开时将其转换为RGB,否则您将使用调色板索引而不是RGB三元组。

尝试将第一行更改为:

original = Img.open('original.gif').convert('RGB')
© www.soinside.com 2019 - 2024. All rights reserved.