@echo on setlocal :: Get the first and second arguments set "target=%~1" set "second=%~2" :: Check if first argument exists if "%target%"=="" ( echo Error: No folder was provided. pause exit /b 1 ) :: Check if a second argument exists if not "%second%"=="" ( echo Warning: Multiple folders / files were dropped onto this script, only the first will be processed. pause ) :: Check if first argument is a valid folder if not exist "%target%\" ( echo Error: "%target%" is not a valid folder. pause exit /b 1 ) :: If it's valid, continue echo Folder "%target%" is valid. echo Opening folder: %target% %~d1 CD "%target%" MD "Studio High Res JPG" MD "Studio High Res PNG" MD "Studio High Res WEBP" MD "Studio Low Res JPG" MD "Studio Low Res PNG" MD "Studio Low Res WEBP" MD "Studio Web JPG" MD "Studio Web PNG" FOR %%A in (*.*) DO ( start "" cmd /c magick "%%A" ^ ^( -clone 0 ^ -background white -alpha remove -alpha off -resize 4600x4600 ^ -write "Studio High Res JPG\%%~nA.jpg" ^ +delete ^ ^) ^ ^( -clone 0 ^ -resize 4600x4600 ^ -write "Studio High Res PNG\%%~nA.png" ^ +delete ^ ^) ^ ^( -clone 0 ^ -resize 2000x2000 -quality 100 ^ -write "Studio High Res WEBP\%%~nA.webp" ^ +delete ^ ^) ^ ^( -clone 0 ^ -background white -alpha remove -alpha off -resize 1600x1600 ^ -write "Studio Low Res JPG\%%~nA.jpg" ^ +delete ^ ^) ^ ^( -clone 0 ^ -resize 1600x1600 ^ -write "Studio Low Res PNG\%%~nA.png" ^ +delete ^ ^) ^ ^( -clone 0 ^ -resize 800x800 -quality 100 ^ -write "Studio Low Res WEBP\%%~nA.webp" ^ +delete ^ ^) ^ ^( -clone 0 ^ -background white -alpha remove -alpha off -resize 500x500 -gravity Center -extent 500x500 ^ -write "Studio Web JPG\%%~nA.jpg" ^ +delete ^ ^) ^ ^( -clone 0 ^ -resize 500x500 -gravity Center -background transparent -extent 500x500 ^ -write "Studio Web PNG\%%~nA.png" ^ +delete ^ ^) ^ NULL: " timeout /t 4 ) msg "%username%" Studio images are being exported to source directory "%target%"