Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- REM THIS IS ONE OF THE BEST IMAGEMAGICK SCRIPTS TO SHRINK LARGE JPG FILES WITH NEAR LOSSLESS QUALITY
- REM I'VE SEEN 50 MB IMAGES BECOME 3-4 MB.... AND I HAVE TO USE A SPECIAL PROGRAM TO SEE THE ACTUAL QUALITY DIFFERENCES THE RESULTS ARE SO IMPRESSIVE
- REM IF YOU WANT A SCRIPT MADE FOR ANY SIZE JPG FILE (RECOMMENDED FOR MEDIUM TO SMALL SIZES) SEE MY OTHER SCRIPT ( https://pastebin.com/xh4Fchvg )
- REM INSTRUCTIONS!!
- REM CREATE A BATCH SCRIPT AND PLACE IT IN A TEST FOLDER FULL OF JPG FILES TO PROCESS
- REM MAKE SURE YOU HAVE THE LATEST VERSION OF IMAGEMAGICK INSTALLED FOR WINDOWS
- REM ( https://imagemagick.org/script/download.php )
- REM YOU MUST DOWNLOAD ONE OF THE DLL VERSIONS THATS NAME ENDS WITH "HDRI-x64-dll.exe"
- REM YOU MUST CHOOSE THE LEGACY PROGRAMS OPTION WHEN INSTALLING IMAGEMAGICK OR WINDOWS WONT RECOGNIZE THE "CONVERT" COMMAND
- REM YOU ALSO NEED TO PLACE THE ROOT INSTALL DIRECTORY ( C:\Program Files\ImageMagick-blah-blah ) IN YOUR WINDOWS ENVIRONMENT PATH
- REM OR POINT THE FULL PATH OF [ C:\Program Files\ImageMagick-blah-blah\convert.exe ] IN PLACE OF THE CONVERT COMMAND IN THE SCRIPT BELOW
- REM IMPORTANT 1!!
- REM THIS SCRIPT WILL CONVERT ALL JPG FILES INTO INTERMEDIATE MPC CACHE FILES
- REM THEN USE THE NEWLY CREATED MPC FILES TO EITHER CREATE OPTIMIZED
- REM JPG FILES OR PNG FILES. THE SCRIPT WILL ASK YOU WHICH TYPE OF FILE YOU WISH TO CREATE.
- REM THE NEW OPTIMIZED FILES WILL BE FOUND IN A SUBFOLDER NAMED "Output"
- REM IMPORTANT 2!!
- REM THE CACHE FOLDER "Cache_Files" THAT WAS TEMPORARILY CREATED WILL BE MOVED TO THE RECYCLE BIN
- REM FOR THE RECYCLE BIN TO WORK YOU MUST DOWNLOAD AND INSTALL RECYCLE.EXE
- REM YOU CAN DOWNLOAD THE RECYCLE.EXE FILE AT ( http://www.maddogsw.com/cmdutils/ )
- REM UNZIP THE EXE INTO THE WINDOWS PATH.. SUCH AS THE SYSTEM32 FOLDER
- REM BEGIN SCRIPT!!
- @ECHO OFF
- SETLOCAL
- COLOR 0A
- TITLE CONVERT JPG FILES INTO MPC AND BACK AGAIN TO PNG OR JPG
- PUSHD "%~dp0"
- REM CREATE OUTPUT FOLDERS
- IF NOT EXIST "Output" MKDIR "Output"
- IF NOT EXIST "Cache_Files" MKDIR "Cache_Files"
- REM FIND ALL JPG FILES AND CONVERT THEM TO MPC FORMAT
- SETLOCAL ENABLEDELAYEDEXPANSION
- SET CNT=0
- FOR %%G IN (*.jpg) DO (
- FOR /F "TOKENS=3" %%H IN ('MAGICK identify "%%G"') DO (
- SET /A CNT+=1
- SET "file!CNT!=%%~nxG"
- ECHO=
- CALL ECHO [!CNT!] Converting Image: %%file!CNT!%% == %%~nG.mpc
- ECHO=
- CONVERT "%%G" -monitor -filter Triangle -define filter:support=2 -thumbnail "%%H" -unsharp 0.25x0.08+8.3+0.045 -dither None -posterize 136 -quality 82 -define jpeg:fancy-upsampling=off -define png:compression-filter=5 -define png:compression-level=9 -define png:compression-strategy=1 -define png:exclude-chunk=all -interlace none -colorspace sRGB "%CD%\Cache_Files\%%~nG.mpc"
- ECHO=
- REM CONTINUE SCRIPT IF ALL MPC FILES HAVE BEEN CREATED
- IF "%%G"=="" ( ENDLOCAL )
- )
- )
- REM PROMPT USER CHOICE, CHOOSE PNG OR JPG OUTPUT
- CLS && ECHO=
- ECHO CHOOSE THE IMAGE TYPE
- ECHO [1] JPG
- ECHO [2] PNG
- ECHO [3] EXIT && ECHO=
- CHOICE /C 123 /N /M "CHOOSE A NUMBER: "
- CLS
- IF ERRORLEVEL 3 GOTO :EOF
- IF ERRORLEVEL 2 GOTO MAKEPNG
- IF ERRORLEVEL 1 GOTO MAKEJPG
- REM CONVERT MPC INTO PNG
- :MAKEPNG
- SETLOCAL ENABLEDELAYEDEXPANSION
- SET CNT=0
- FOR %%I IN ("%CD%\Cache_Files\*.mpc") DO (
- SET /A CNT+=1
- SET "file!CNT!=%%~nxI"
- ECHO=
- CALL ECHO [!CNT!] Converting Image: %%file!CNT!%% == %%~nI.png
- ECHO=
- CONVERT "%%I" -monitor "Output\%%~nI.png"
- ECHO=
- )
- ENDLOCAL & GOTO END
- REM CONVERT MPC INTO JPG
- :MAKEJPG
- SETLOCAL ENABLEDELAYEDEXPANSION
- SET CNT=0
- FOR %%J IN ("%CD%\Cache_Files\*.mpc") DO (
- SET /A CNT+=1
- SET "file!CNT!=%%~nxJ"
- ECHO=
- CALL ECHO [!CNT!] Converting Image: %%file!CNT!%% == %%~nJ.jpg
- ECHO=
- CONVERT "%%J" -monitor "Output\%%~nJ.jpg"
- ECHO=
- )
- ENDLOCAL
- :END
- REM COMMENT OUT THE NEXT LINE TO KEEP THE MPC AND CACHE FILES USED ABOVE
- RECYCLE "Cache_Files"
- REM OPEN EXPLORER TO THE OUTPUT FOLDER
- START "" /MAX explorer.exe "%CD%\Output"
- EXIT
Advertisement
Add Comment
Please, Sign In to add comment