我试图通过GraphicsMagick模块或使用带有ImageMagick.exe的os.system命令使用python创建一个gif。我在这里找到的最相关的问题是大约6年前的这个问题。
imagemagick下载的网址
文件:/// C:/Program%20Files/ImageMagick-6.9.1-Q16/www/binary-releases.html#windows
以下是我的代码(不工作)。我正在尝试使用ImageMagick路线,因为上面的问题表明这更像是pythonic。任何帮助,将不胜感激。
from pgmagick import Image, ImageList, Geometry, Color
import os, sys
import glob
#dataDir = sys.argv[1]
#outDir = sys.argv[2]
dataDir = 'C:\\Users\\name\\Desktop\\a'
os.chdir(dataDir)
fileList = glob.glob(dataDir + '\*.jpg')
fileList.sort()
os.system('convert fileList -delay 20 -loop 0 *jpg animated.gif')
我的代码的最后一行出现了无效的语法错误。
答案 0 :(得分:0)
对于那些在将来尝试使用imagemagick在Windows机器上制作gif时看到这个的人,这是我想出的解决方案。我不知道这是否是最有效的记忆方式,但它确实有用。
import os, sys
dataDir = 'fullpath of directory with images'
os.chdir(dataDir)
os.system('SETLOCAL EnableDelayedExpansion')
#This is the path of the imagemagick installation convert command.
#The invalid parameter I was getting was because the computer was trying to
#use a different convert command. This code sets convert as a different
#variable and then calls that new variable as the convert command.
os.system('SET IMCONV="C:\Program Files\ImageMagick-6.9.1-Q16\Convert"')
os.system('%IMCONV% *.jpg animated.gif')
我为简化解决方案所做的一些更改。我不是像我在问题中那样制作文件列表,而是将所有图像粘贴在目录中,然后调用命令将这些图像转换为gif。这是我遇到过的最简单的解决方案。