私はバッチファイルの経験がほとんどなく、これを私が書いた他のファイルからまとめました。
バッチ ファイルには、アイコンの上にドロップされた画像のフォルダーがあり、写真の向きに応じて異なるサイズ変更を実行する必要があります。
エラーを読み取る前に、DOS ウィンドウが閉じます。
ループ内に変換または識別行のみ (一度に 1 行) がある場合は機能しますが、if else では失敗します。IF ELSE を有効にすると、DO の後の開き括弧がテキスト エディターで閉じ括弧を強調表示しません。
どんな助けでも大歓迎です。
REM @echo off
REM Read all the png images from the directory
FOR %%f IN (%1\*.png) DO (
REM Set the variable width to the image width
SET width=identify -format "%%[fx:w]" %%f
REM Set the variable height to the image height
SET height=identify -format "%%[fx:h]" %%f
REM Check if the photo is portrate or landscape and run the relavant code
IF %width% LSS %height% (
convert "%%f" -trim -resize x740 "modified/%%~nf.jpg"
) ELSE (
convert "%%f" -trim -resize x740 -background blue -gravity center -extent 740x740 "modified/%%~nf.jpg"
)
)
PAUSE
エラー:
C:\>REM @echo off
C:\>REM Read all the png images from the directory
( was unexpected at this time.
C:\>IF LSS (