RMagick を使ってGIFアニメ(Ruby)
メソッド gifanme(delay, dir) です。dir は素材画像の入っているディレクトリ、delay は待ち時間(1/100秒単位)です。gifanime.gif という名前で出力されます。アニメーションされる順番はディレクトリ内のファイルのアルファベット辞書順になります。例えば img2.jpg よりも img11.jpg の方が先に来るので、注意して下さい。
Gem は RMagick の他、自家製の kaki-utils(imgsuffix メソッド)を使っています。Linux での RMagick のインストールに関しては、こちらが参考になるかもしれません。
gifanime.rb
require 'bundler/setup' require 'rmagick' require 'kaki/utils/imgsuffix' include Magick def gifanime(delay = 20, dir = "./") list = ImageList.new Dir.chdir(dir) Dir.glob("*").sort.each do |fn| list.concat(ImageList.new(fn)) unless fn.imgsuffix.empty? end list.delay = delay list.write("./gifanime.gif") end if __FILE__ == $0 gifanime(ARGV[0], ARGV[1]) end