2011-02-13 100 views
2

我是PIL和Python的新手,我有一个与API相关的问题。Python PIL图像复制

我有一个形象

img = Image.new('RGB', (1, 2)) 

而且我有一个元组列表

x = [(255, 255, 255), (255, 255, 255)] 

我做img.putdata(x)

,当我重新加载图片上img.save('C:\\somename.jpeg')

后来和做

img2 = Image.open('C:\\somename.jpeg') 

y = [p for p in img2.getdata()] 

数据的“Y”,我居然得到的回复是

[(255, 255, 255), (251, 251, 251)] 

我无法理解为什么会发生? 请让我知道如果任何人有一些指针与此有关。

回答

9

jpeg是一种有损压缩格式,不保证逐像素复制。尝试以无损格式保存图像。

+0

是的,它完美的工作,谢谢! – AAK 2011-02-13 22:38:13