お世話になります
Imagemagickを使ってフォルダー内にある全てのpngファイルの長辺を900pxにしたいと思っています。
いつもは画像の向きを全部横長に統一して以下のコマンドをDOS窓に貼り付けて処理しています。
※もちろんディレクトリを移動してからです
mogrify -resize 900x *.png
ですが長辺を900pxにする方法を調べたところ、以下のページがHitしました。
このページによるとフォルダー内に縦長の画像と横長が混じっていても、
記載されているコードで処理すると長辺が900pxになると書いてあります。
※私はそう思います。私の解釈が間違えていたら教えて下さい。
↓
同じディレクトリのpng画像を長辺900pxにリサイズするbatファイル
https://gist.github.com/smison/4400e25eef69981c160b
このコードを使ってみたいのですが、batファイルの操作を行ったことがないため、
ページに記載されているコードの使い方がわかりません。
※コピーして貼り付けてみましたがエラーで動きません。
自分なりに調べてみたのですが、どういう知識が足りなくて、
何から勉強していいのか全くわからない状況です。
こういう状況ですので、すいませんがDOS窓にペーストしたら
「フォルダーの中のpngファイルの長辺を全て900pxにする」
Imagemagickのコマンドを教えて下さい。
こちらの知識、環境は以下のような感じです。
Imagemagickの環境、普段の使い方
※インストール済み
1)フォルダー(ディレクトリ)内のpngファイルの幅を全部900pxにする
↓
mogrify -resize 900x *.png
※縦長の画像は画像処理ソフトで90度回転させて横長にしてから処理しています。
※縦長の画像の数が多い時は別フォルダーに別けて、
↓
mogrify -resize x900 *.png
で処理しています。
2)フォルダー内の全ての画像(png)の幅を900pxにして枠をつける
↓
mogrify -resize 900x -bordercolor "#808080" -border 5x5 *.png
4)1個の画像に枠を付ける
↓
convert Image45.jpg -bordercolor "#023C14" -border 5x5 Image45A.jpg
こんな感じです。
すいませんが具体的にコードで解答できる方、Imagemagickの
「フォルダーの中のpngファイルの長辺を全て900pxにする」ための
コマンドを教えて下さい。
参考にしたコードは先のページにあります。
※一応、コードも貼り付けておきます。
追記
1)
ご解答頂いてもすぐに応答できず、数日後に応答する場合があります。
ご了承の上、ご解答お願いします。
2)
理想は「フォルダー内の画像(png)全て」ですが、不可なら画像1枚だけでもOKです。
→縦長、横長どちらでも長辺を900pxにする
ImageMagick、バッチファイルの操作に詳しい方、よろしくお願いします。
setlocal enabledelayedexpansion for %%f in (*.png) do ( REM 画像の縦幅を取得 for /f "usebackq tokens=*" %%i in (`identify -format '%%h' %%f`) do @set HEIGHT=%%i REM 画像の横幅を取得 for /f "usebackq tokens=*" %%i in (`identify -format '%%w' %%f`) do @set WIDTH=%%i if !HEIGHT! GEQ !WIDTH! ( REM 縦幅 >= 横幅 convert -resize x900 %%f %%~nf_resized.png ) else ( REM 縦幅 < 横幅 convert -resize 900x %%f %%~nf_resized.png ) ) ``````ここに言語を入力 コード
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/14 08:19
2018/03/14 08:25
2018/03/14 08:43