尝试将jpg序列转换为gif时出现错误。似乎无法弄清楚如何添加调色板,或者这是否是实际问题。能够使用images2gif.py主目录中的numpy数组加载gif。

import PIL
from PIL import Image
import StringIO
import images2gif

images = []
for frame in animation1.frames:
    img_data = s3manager.get_file_as_string(frame.s3_filename)
    image = Image.open(StringIO.StringIO(img_data))
    images.append(image)

images2gif.writeGif('lala3.gif', images, duration=0.5, dither=0)


有了这个我得到以下错误:

"images2gif.py", line 436, in writeGifToFile
  fp.write(globalPalette)
TypeError: must be string or buffer, not None


不确定如何为这些jpg指定调色板。文档对我来说还不清楚,甚至不确定是否是问题所在。救命?

最佳答案

在images2gif.py中,更改第200行:

for im in images:
    palettes.append( getheader(im)[1] )




for im in images:
    palettes.append(im.palette.getdata()[1])

07-24 15:22