私はこれを探しましたが、簡単に実装できるソリューションが見つかりません。
現在、私はパノラマを扱うアプリケーションに取り組んでいます。バッチステッチプロセスから出ると、寸法は平均18000x4000です。 ImageMagickを使用して、アスペクト比を維持しながら特定の高さ値にそれらの画像をダウンスケールするにはどうすればよいですか?
マニュアルによると、convert
操作は、同じアスペクト比を維持しながら、サイズ変更する高さと幅の両方を取ります。私が望んでいるのは、既存のサイズ変更スクリプト関数に600と1000を入れて、通常の表示可能な画像と縮小サイズの両方を持たせることです。
ImageMagickのドキュメント によると、-geometry x600
を使用することをお勧めしますが、x600
は、新しい画像の高さが600ピクセルで同じであることを意味します古い画像としてのアスペクト比。
single imageの場合:
convert input.png -geometry x600 output.png
1回の実行でフォルダーのすべての画像を変換する場合は、そのフォルダーに切り替えて(つまり、cd ~/Pictures/panoramas/
)、使用します
mogrify -geometry x600 *.png
ただし、は元の画像ファイルを上書きするため、注意してください。それを避けるために
mkdir ~/Pictures/panoramas/small
)cp ~/Pictures/panoramas/*.png ~/Pictures/panoramas/small
)にコピーし、cd ~/Pictures/panoramas/small && mogrify -geometry x600 *.png
)の画像を編集します。フォルダ内のすべてのファイルのサイズを変更するには、次のようなものを使用できます
mogrify -800x1094のサイズ変更! * jpg#画像のアスペクト比を保持
---必要に応じてサイズと拡張子を変更します