imagemagick gif和覆盖的png图像

时间:2018-08-13 21:21:15

标签: imagemagick imagemagick-convert

我有一个GIF animation,其大小未知,而一个PNG 600x400,其透明元素。如何获得600x400的GIF like this,裁剪GIF和Imagemagick的有效动画?

1 个答案:

答案 0 :(得分:0)

使用Imagemagick,您需要对gif(填充完整帧)和-layers复合材料进行合并,以将动画gif与静态图像组合在一起。使用Imagemagick 6.9.10.9 Q16 Mac OSX,它将是:

convert JN6W6.gif -coalesce -resize 600x400 null: PAiVp.png -gravity center -layers composite -layers optimize JN6W6_PAiVp_1.gif


modified by resize only

如果您只希望将其裁剪为600x400,则

convert JN6W6.gif -coalesce -background white -gravity center -extent 600x400 +repage null: PAiVp.png -gravity center -layers composite -layers optimize JN6W6_PAiVp_2.gif


modified by simply cropping using -extent

如果要调整大小然后裁剪,

convert JN6W6.gif -coalesce -resize 600x400^ -gravity center -crop 600x400+0+0 +repage null: PAiVp.png -gravity center -layers composite -layers optimize JN6W6_PAiVp_3.gif


modified by resizing and cropping

在此处理中需要null:作为分隔符。

请参见https://www.imagemagick.org/Usage/anim_mods/#composite

如果使用Imagemagick 7,则将convert替换为magick。