6000ピクセル×4000ピクセル以上の高解像度画像を含むさまざまなフォルダがあります。一部は5000px x 3000pxで、サイズはフォルダごとに異なります。ロード時間/処理/メモリスペースなどのリソースを節約するために、すべての画像のサイズを変更したいと思います。すべての画像を少なくとも3000x2000、最大3500x2200に保ちたいです。 imagemagickを使用して元のコンテンツを置き換えるバッチ操作をどのように実行できますか?誰かが私にUbuntuでimagemagickとmorgifyを使うように勧めますか?
以前は、Windows PCを使用したときにフォトライザーソフトウェアを使用していました。フォルダを1つずつ選択し、jpegMiniソフトウェアで画像を処理します。したがって、5MBの写真のサイズは約1.5MBに縮小されます。各フォルダにはさまざまな解像度の画像が含まれています。これは非常に時間がかかるプロセスです。各フォルダに対して、画像サイズを約3000 * 2000に保ち、アスペクト比をある程度維持するために、フォトサイザの割合を減らす必要があります。
答え1
次のコマンド(スクリプトまたはコマンドラインから実行)は、現在のフォルダと現在のフォルダのすべてのサブフォルダ内のすべての画像のサイズを変更します。
find . -type f | grep -i -e '\.png$' -e '\.jpg$' -e '\.gif$` | xargs -I ___ mogrify -resize '3500x2200>' ___
現在のフォルダの下のフォルダ内のすべての一般的なファイルが画像の場合は、grepステップをスキップできます。それ以外の場合は、処理する必要があるすべての拡張子を含めるように変更する必要があります(– png、jpg、およびgifと仮定します。確かに)。大文字と小文字を区別しないでください-i
。
必要に応じて「3500x2200」を変更してください。アスペクト比を維持し、その寸法で最大値を維持します。
一部は水平で、一部は垂直で、垂直を区別せずに大きなサイズを約3500に設定したい場合は、「3500x3500」がより適している可能性があります。
「>」は、サイズが変更されず、サイズのみが変更されることを意味します。
品質を下げてファイルサイズを減らすために、-quality 90%
afterなどを追加することもできます。mogrify
mogrify
あなたの要求に従って元のファイルを上書きしてください。したがって、トリガーを引く前に本当にこれをしたいことを確認してください。
答え2
…少し遅れましたが、他の人に役立つかもしれません。 Ubuntuでは、次のものを使用します。チャット(ソフトウェアで利用可能)Fotosizer(グラフィックインターフェース)と非常によく似ており、必要な操作を行います。