ImageMagickを使用して大きな画像のみを比率に縮小します
ImageMagickを使用すると、必要なもののスクリーンショットを簡単に作成できますが、使用するスペースを減らすためにサイズを変更したいと思います。私はこれを見つけました :
convert screen.jpg -resize 1280x1024\! screen.jpg
しかし、最も大きいサイズ(width OR height))に基づいてサイズを変更したいのですが、もう一方(height OR width)は比例してサイズ変更されますあまりにも。
たとえば、すべての画像を最大の幅/高さのサイズで600pxにサイズ変更したいとします。
- 1920x1200 =>幅が最大:600x375
- 600x1200 =>高さが最大:300x600
ImageMagickでそれを行うにはどうすればよいですか? (または、少なくとも1つの最大サイズを定義します(たとえば、幅のみ))。
ご協力いただきありがとうございます!
注:import
コマンドを使用して自動的に実装することは可能ですか?
アスペクト比を維持するために、画像を特定のスケールで縮小できます。
変換-サイズ変更50%screen.jpg
または、ピクセル領域を使用します。
convert -resize 180000 @ screen.jpg
これはまた、指定された領域に小さな画像を爆破します。 ImageMagickで大きな画像を縮小し、小さな画像はそのままにしておく場合は、 ">"演算子を使用します。
convert -resize '180000 @>' screen.jpg
次に、シェルが「>」記号をファイルリダイレクタとして解釈しないように、geometry引数を引用符で囲む必要があることに注意してください。
これらおよびその他のオプションについては、ImageMagickのドキュメントを参照してください。 http://www.imagemagick.org/script/command-line-processing.php#geometry
アスペクト比を維持するには:
convert -resize 600x600 screen.jpg:
- 1920x1200 => 600x375
- 600x1200 => 300x600
- 150x300 => 300x600
- 300x150 => 600x300
convert -resize 600x600\> screen.jpg:
- 1920x1200 => 600x375
- 600x1200 => 300x600
- 150x300 => 150x300(大きいサイズにサイズ変更されません)
- 300x150 => 300x150(大きいサイズにサイズ変更されません)