
同じサイズの画像がたくさんあります。すべてを同じ座標にトリミングする方法はありますか?
Windows 7。
答え1
ImageMagickを使えばこれが可能です。製品からの例をいくつか紹介します。マニュアル:
convert rose: rose.gif
convert rose: -crop 40x30+10+10 crop.gif
convert rose: -crop 40x30+40+30 crop_br.gif
convert rose: -crop 40x30-10-10 crop_tl.gif
convert rose: -crop 90x60-10-10 crop_all.gif
convert rose: -crop 40x30+90+60 crop_miss.gif
そして、1 つのサンプル ループですべてのイメージに対してこれを実行できます。次のようになります。
for i in `ls in\`
do
convert $i -crop 40x30+10+10 out/`basename $i`
done
上記では、in ファイルは in/ ディレクトリにあり、out ファイルは out/ ディレクトリに保存されると想定しています。
答え2
Windowsをお使いの場合は、ImageMagick のポータブルまたはインストーラー Windows バイナリ リリース、画像のあるディレクトリで次のコマンドを実行します(当然変換.exePATH のどこかに置きます):
for %f in (*.jpg) do convert -crop 32x32+16+16 "%~f" "cropped_%~f"
簡単です。UNIX風のシェルや40行以上のコードは必要ありません。提案された一部の人々によって。