以下のgifの寸法は600 * 800です。高さは800ピクセルなので、下に削除したい空白がたくさんあります。
これはold.gif
として保存されました:
file old.gif
old.gif: GIF image data, version 89a, 600 x 800
変換コマンドでサイズ変更:
convert old.gif -coalesce temp.gif
convert -size 600x800 temp.gif -resize 600x400! new.gif
!
は、アスペクト比を無視し、アスペクト比を変更しないことを意味します。
結果は次のとおりです。
新しいファイルnew.gif
は変形されます。
GIFを変形せずにサイズ変更するにはどうすればよいですか?
-crop
引数での私の試み。
convert old.gif -crop 600x400+0+0 new.gif
New.gifの空白領域を削除する方法は?
空白の白い領域は、Firefoxでは明らかです。 convert old.gif -crop 600x400+0+0 new.gif
は、new.gif
の空白の白い領域を削除できません。
repage
引数を使用すると、空白の白い領域が削除されますが、gifがよりぼやけます。
convert old.gif -crop 600x400+0+0 -trim +repage new.gif
使用する !
に与えられた解像度の後-crop
:
convert old.gif -crop 600x400+0+0\! new.gif
imagemagick docs から:
ImageMagickバージョン6.2.4-5から、新しい特別フラグを「
-crop
"引数。このフラグ '!
'は、返された画像の仮想キャンバス情報をトリミングするようにトリミングするように指示します。...
返された画像のキャンバスサイズが、画像がトリミングされた領域とどのように一致するかに注目してください。