0
我有以下代码如何使用魔杖降低gif质量?
from wand.image import Image
def saveSizes(f, filename):
scaled_width = 400
scaled_hight = 400
with Image() as finalImage:
with Image(filename=f) as img:
for frame in img.sequence:
#frame.transform(resize="%dx%d" % (scaled_width, scaled_hight))
frame.compression_quality = 75
finalImage.sequence.append(frame)
filename += '.gif'
finalImage.save(filename = filename)
saveSizes('source_file.gif', 'dest_file')
但“source_file.gif”大小相同“dest_file.gif”的。为什么“compression_quality”属性不起作用?
有没有更好的方法来减少gif使用魔杖或其他一些python库的大小。
此外,我在控制台中获取gif中每个帧的以下日志。
Exception ignored in: <bound method Resource.__del__ of <wand.sequence.SingleImage: 901eb12 (200x150)>>
Traceback (most recent call last):
File "/usr/local/lib/python3.5/site-packages/wand/resource.py", line 232, in __del__
self.destroy()
File "/usr/local/lib/python3.5/site-packages/wand/sequence.py", line 331, in destroy
self.container.sequence[self.index] = self
File "/usr/local/lib/python3.5/site-packages/wand/sequence.py", line 304, in index
assert image
AssertionError:
恕我直言,以减少的GIF文件的大小最好的办法是减少颜色数量 - 尝试将颜色数量设置为31或63或127,看看是否有帮助。 –