我正在尝试将一张图片粘贴到另一张图片上,使用:
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()
除了粘贴的图像颜色变为灰色外,此方法有效。
之前的图片:
之后的图像:
有没有一种简单的方法可以保留相同的粘贴图像颜色?我已尝试阅读其他问题和文档,但找不到有关如何执行此操作的任何解释。
非常感谢
最佳答案
我相信所有 GIF 图像都是调色板 - 也就是说,它们不是在每个位置都包含一个 RGB 三元组,而是包含一个 RGB 三元组调色板的索引。这可以节省空间并提高下载速度 - 代价是每张图片仅允许 256 种独特的颜色。
如果您想将 GIF(或调色板化的 PNG 文件)视为 RGB,您需要确保在打开时将其转换为 RGB,否则您将使用调色板索引而不是 RGB 三元组。
尝试将第一行更改为:
original = Img.open('original.gif').convert('RGB')
关于python-imaging-library - PIL简单图片粘贴——图片变色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52152850/