diff --git a/RCFI Tools.bat b/RCFI Tools.bat index 2a56062..07ab562 100644 --- a/RCFI Tools.bat +++ b/RCFI Tools.bat @@ -1,28 +1,30 @@ @echo off :: Update v0.2 -:: 2023-09-13 Adding context menu for .webp image extention. +:: 2023-09-13 Adding context menu for .webp image extension. :: 2023-10-07 Adding 'Template configuration' to background right-click menu. -:: 2023-10-07 Removing unused lines -:: 2023-10-07 Adding config to change prefred text editor. +:: 2023-10-07 Removing unused lines. +:: 2023-10-07 Adding config to change preferred text editor. :: 2023-10-14 Removing 'Refresh icon cache (restart explorer)' from folder right-click menu. :: 2023-12-06 Adding 'Compress Image' to image right-click menu. -:: 2023-12-09 Fix: Generate result displayed incorrectly when hidden file selected as folder icon. -:: Reported by Reddit user: https://www.reddit.com/r/Batch/comments/rzqrx5/comment/kcmda8o/ -:: 2023-12-11 Renaming "config.ini" to "RCFI.config.ini" +:: 2023-12-09 Fix: "Generate result" displayed incorrectly when hidden file selected as folder icon. +:: Reported by Reddit user https://www.reddit.com/r/Batch/comments/rzqrx5/comment/kcmda8o/ +:: 2023-12-11 Renaming "config.ini" to "RCFI.config.ini." :: 2023-12-13 Adding option to delete the original file. :: Requested by Reddit user: https://www.reddit.com/r/Batch/comments/rzqrx5/comment/kcmda8o/ :: 2023-12-13 Adding option to hide "foldericon" and "desktop.ini" as system files. -:: 2023-12-14 Fix: processing time counter displayed incorrectly when 'TemplateAlwaysAsk' enabled. +:: 2023-12-14 Fix: Processing time counter displayed incorrectly when 'TemplateAlwaysAsk' enabled. :: 2023-12-16 Changing folder icon through "Choose and Set as" menu now doesn't save the selected template to the config. -:: 2023-12-22 Adding suffix number to output file name of 'custom resize and custom compress' so it wont replace existing file. -:: 2024-01-23 Fix: 'Choose template' menu always showing "Invalid Selection" when 'AlwaysAskTemplate' is active. +:: 2023-12-22 Adding suffix number to output file name of 'resize and compress' so it won't replace existing files. +:: 2024-01-23 Fix: 'Choose template' menu always shows "Invalid Selection" when "AlwaysAskTemplate=Yes". :: 2024-02-10 Adding 'Search Icon' to Folder right-click menu. :: 2024-03-10 Fix: Unable to change keyword extension in 'Define keyword' menu. :: 2024-03-26 Adding support for multiple keywords. -:: 2024-04-24 Fix: Template Configuration menu doesn't work properly when "AlwaysAskTemplate=No" -:: 2024-05-14 Fix: file scan unable to find matched keywords when file extension not specified. +:: 2024-04-24 Fix: Template Configuration menu doesn't work properly when "AlwaysAskTemplate=No." +:: 2024-05-14 Fix: File scan unable to find matched keywords when file extension not specified. :: 2024-05-20 Changing default configuration of "TemplateIconSize" from "Auto" to "256" for smaller file size and faster image processing. -:: 2024-05-20 Replacing ImageMagick Convert with version 7.1.1-32-portable-Q8-x64. Newer, Faster, but not compatible with x86 architecture (64 bit only). +:: 2024-05-20 Replacing ImageMagick Convert with version 7.1.1-32-portable-Q8-x64. Newer, faster, but not compatible with x86 architecture (64-bit only). +:: 2024-06-06 Minor bug fixes and optimization for v0.2 release. + setlocal set name=RCFI Tools @@ -52,7 +54,6 @@ echo %TAB% %pp_%Drag and drop%_%%g_% an %c_%image%g_% to th echo %TAB% then press Enter to change the folder icon.%_% echo. ) -rem if not defined OpenFrom echo %ESC%%u_%%gg_%Template:%_%%cc_% %TemplateName%%gg_% %u_%Keyword:%_% %printTagFI%%ESC% goto Options-Input :Status @@ -170,7 +171,7 @@ goto Input-Error :Input-Context -title %name% %version% ^| "%SelectedThing%" +title %name% %version% ^| "%cd%" set Dir=cd /d "%SelectedThing%" set SetIMG=set "img=%SelectedThing%" cls @@ -334,6 +335,7 @@ goto FI-Selected_folder echo %TAB%%i_% Change folder icon for selected folders. %_% echo %TAB%%_%--------------------------------------------------------------------%_% set /a FolderCount=0 +set "referer=MultiFolderRightClick" for %%S in (%xSelected%) do ( set "SelectedThing=%%~fS" PUSHD "%%~fS" 2>nul &&( @@ -351,11 +353,13 @@ echo %g_% %g_%Press %gn_%1%g_% then hit Enter to change them separatly in each d exit /b :FI-Selected_folder-Input +set "referer=" if not exist "%input%" echo %g_%To enter the image path you can drag and drop the image here, then press Enter. ^ &echo %g_%------------------------------------------------------------------------------- ^ &set /p "Input=%_%%w_%Enter the image path:%_%%c_%" set "Input=%Input:"=%" if "%input%"=="1" goto FI-Selected_folder-Separate +echo. if not exist "%Input%" ( echo. echo. @@ -394,6 +398,9 @@ if not defined iconresource ( echo %TAB%%W_%โ”Œ%YY_%๐Ÿ“%ESC%%YY_%%foldername%%ESC% call :FI-Generate-Folder_Icon exit /b +) else if not exist "%iconresource%" ( + echo %TAB%%W_%โ”Œ%Y_%๐Ÿ“%ESC%%YY_%%foldername%%ESC% + call :FI-Generate-Folder_Icon ) if /i "%replace%"=="all" ( set "ReplaceThis=%iconresource%" @@ -474,8 +481,8 @@ IF /i %H_result% LSS 10 (set "H_s= " ) else (IF /i %H_result% GTR 9 set "H_s echo %TAB%%s%%u_%%result% Folders found.%_% IF /i %YY_result% GTR 0 IF NOT %hy_result% EQU 0 echo %TAB%%yy_%%YY_s%%HY_result%%_% Folders can be processed. IF /i %h_result% GTR 0 echo %TAB%%rr_%%H_s%%H_result%%_% Folders can't be processed. -IF /i %R_result% GTR 0 echo %TAB%%r_%%R_s%%R_result%%_% Folder icons are missing and can be changed. -IF /i %Y_result% GTR 0 echo %TAB%%y_%%Y_s%%Y_result%%_% Folders already has an icon. +IF /i %R_result% GTR 0 echo %TAB%%r_%%R_s%%R_result%%_% Folder's icons are missing and can be changed. +IF /i %Y_result% GTR 0 echo %TAB%%y_%%Y_s%%Y_result%%_% Folders already have an icon. IF /i %G_result% GTR 0 echo %TAB%%g_%%G_s%%G_result%%_% Folders have no files matching the keywords. IF /i %YY_result% LSS 1 echo.&echo %TAB% Couldn't find any files matching the keywords. No folder icons to be generated. echo. @@ -519,14 +526,29 @@ if "%locationCheck%"=="%location%" EXIT /B set "locationCheck=%location%" &set "Selected=" REM Get New Line REM define new line -IF %Y_result% NEQ %Y_d% (set "Y_n=echo.") else (set "Y_n=") -IF %G_result% NEQ %G_d% (set "G_n=echo.") else (set "G_n=") -IF %R_result% NEQ %R_d% (set "R_n=echo.") else (set "R_n=") -IF %R_result% EQU %R_d% (set "R_nx=echo.") else (set "R_nx=") -IF %R_result% LSS %R_d% (set "R_nxx=echo.") else (set "R_nxx=") -IF %YY_result% NEQ %YY_d% (set "YY_n=echo.") else (set "YY_n=") -IF %YY_result% EQU %YY_d% (set "YY_nx=echo.") else (set "YY_nx=") -IF %YY_result% LSS %YY_d% (set "YY_nxx=echo.") else (set "YY_nxx=") +IF %Y_result% NEQ %Y_d% (set "Y_n=echo." ) else (set "Y_n=" ) +IF %G_result% NEQ %G_d% (set "G_n=echo." ) else (set "G_n=" ) +IF %R_result% NEQ %R_d% (set "R_n=echo." ) else (set "R_n=" ) +IF %R_result% EQU %R_d% (set "R_nx=echo." ) else (set "R_nx=" ) +IF %R_result% LSS %R_d% (set "R_nxx=echo." ) else (set "R_nxx=" ) +IF %YY_result% NEQ %YY_d% (set "YY_n=echo." ) else (set "YY_n=" ) +IF %YY_result% EQU %YY_d% (set "YY_nx=echo." ) else (set "YY_nx=" ) +IF %YY_result% LSS %YY_d% (set "YY_nxx=echo.") else (set "YY_nxx=") + + + + +if /i "%referer%"=="MultiFolderRightClick" ( + set "Y_n=" + set "G_n=" + set "R_n=" + set "R_nx=" + set "R_nxx=" + set "YY_n=" + set "YY_nx=" + set "YY_nxx=" +) + REM display number correction +1 IF %Y_result% EQU %Y_d% set /a "Y_d+=1" @@ -551,11 +573,16 @@ REM IF %G_d% GTR 99 (set "G_s=%G_d%") REM IF %R_d% GTR 99 (set "R_s=%R_d%") REM IF %YY_d% GTR 99 (set "YY_s=%YY_d%") + +REM Display folder name set Y_FolderDisplay=echo %TAB%%Y_%%Y_s%๐Ÿ“%ESC%%_%%foldername%%ESC% set G_FolderDisplay=echo %TAB%%G_%%G_s%๐Ÿ“%ESC%%_%%foldername%%ESC% set R_FolderDisplay=echo %TAB%%W_%%R_s%โ”Œ%YY_%๐Ÿ“%ESC%%YY_%%foldername%%ESC% -set YY_FolderDisplay=echo %TAB%%W_%%YY_s%โ”Œ%YY_%๐Ÿ“%ESC%%YY_%%foldername%%ESC% - +set YY_FolderDisplay=echo %TAB%%W_%%YY_s%โ”Œ%YY_%๐Ÿ“%ESC%%YY_%%foldername%%ESC% +if /i "%referer%"=="MultiFolderRightClick" ( + set R_FolderDisplay=echo %TAB%%W_%%R_s%%RR_%๐Ÿ“%ESC%%_%%foldername%%ESC% + set YY_FolderDisplay=echo %TAB%%W_%%YY_s%%YY_%๐Ÿ“%ESC%%_%%foldername%%ESC% +) PUSHD "%location%" @@ -602,9 +629,11 @@ PUSHD "%location%" %R_n% %R_FolderDisplay% set /a R_result+=1 - echo %TAB%%w_%โ”‚%R_%๐Ÿž%ESC%%_%%iconresource% %g_%(file not found!)%ESC% - echo %TAB%%w_%โ”‚%G_%This folder previously had a folder icon, but the icon file is missing.%_% - echo %TAB%%w_%โ”‚%G_%The icon will be replaced by the selected image.%_% + if /i not "%referer%"=="MultiFolderRightClick" ( + echo %TAB%%w_%โ”‚%R_%๐Ÿž%ESC%%_%%iconresource% %g_%(file not found!)%ESC% + echo %TAB%%w_%โ”‚%G_%This folder previously had a folder icon, but the icon file is missing.%_% + echo %TAB%%w_%โ”‚%G_%The icon will be replaced with the selected image.%_% + ) set "newline=no" set "Filename=%%~nxF" set "FilePath=%%~dpF" @@ -693,7 +722,7 @@ IF /i %success_result% LSS 10 (set "success_s= ") else (IF /i %success_result% echo %TAB%%s%%u_%%result% Folders found.%_% IF NOT "%YY_result%"=="%success_result%" IF %YY_result% GTR 0 IF %r_result% GTR 0 echo %TAB%%yy_%%YY_s%%YY_result%%_% Folders processed. IF /i %R_result% GTR 0 echo %TAB%%r_%%R_s%%R_result%%_% Folders icon changed. -IF /i %Y_result% GTR 0 echo %TAB%%y_%%Y_s%%Y_result%%_% Folders already has an icon. +IF /i %Y_result% GTR 0 echo %TAB%%y_%%Y_s%%Y_result%%_% Folders already have an icon. IF /i %G_result% GTR 0 echo %TAB%%g_%%G_s%%G_result%%_% Folders have no files matching the keywords. IF /i %YY_result% LSS 1 IF /i %success_result% LSS 1 echo.&echo %TAB% ^(No folders to be processed.^) IF NOT "%YY_result%"=="%success_result%" IF %action_result% EQU 0 echo %TAB% ^(No files to be processed.^) @@ -722,7 +751,7 @@ if not defined Selected ( rem Display "template" and "selected image" set "Selected=%Filename%" echo %ESC%%W_%โ””%C_%๐Ÿž %c_%%Filename%%ESC% - if /i "%cdonly%"=="true" echo %TAB%%ESC%Template :%cc_%%TemplateName%%ESC%%r_% + if /i "%cdonly%"=="true" echo %TAB%%ESC%Template : %cc_%%TemplateName%%ESC%%r_% rem Executing "specified template" to convert and edit the selected image if /i "%fileExt%"==".ICO" if exist "%TemplateForICO%" ( for %%T in ("%TemplateForICO%") do echo %TAB%%ESC%%g_%Image extension is %c_%.ico%g_%, TemplateForICO: %cc_%%%~nT%g_%.%ESC%%r_% @@ -804,7 +833,7 @@ EXIT /B if /i "%Already%"=="Asked" exit /b if /i not "%Context%"=="Edit.Template" echo.&echo.&echo %TAB% %w_%Choose Template to Generate Folder Icons:%_% set "TSelector=GetList"&set "TCount=0" -PUSHD "%rcfi%\template" +PUSHD "%rcfi%\templates" FOR %%T in (*.bat) do ( set /a TCount+=1 set "TName=%%~nT" @@ -827,6 +856,7 @@ set "Already=Asked" exit /b :FI-Template +title %name% %version% ^| Template if /i not "%referer%"=="FI-Generate" if defined Context cls &echo.&echo.&echo.&echo. if /i "%referer%"=="FI-Generate" echo.&echo %TAB% %w_%Choose Template to Generate Folder Icons:%_%&echo %TAB% %g_%^(This will not be saved to the configurations^)%_% if /i not "%referer%"=="FI-Generate" ( @@ -850,7 +880,7 @@ if /i not "%referer%"=="FI-Generate" ( echo. ) set "TSelector=GetList"&set "TCount=0" -PUSHD "%rcfi%\template" +PUSHD "%rcfi%\templates" FOR %%T in (*.bat) do ( set /a TCount+=1 set "TName=%%~nT" @@ -913,7 +943,7 @@ rem ) rem if /i "%TemplateChoice%"=="s" goto FI-Template-Input rem Process valid selected options set "TSelector=Select"&set "TCount=0" -PUSHD "%rcfi%\template" +PUSHD "%rcfi%\templates" FOR %%T in (*.bat) do ( set /a TCount+=1 set "TName=%%~nT" @@ -977,7 +1007,7 @@ if /i "%TSelector%"=="Select" ( set "Ttest=" set "referer=FI-Template" set "InputFile=%TemplateSampleImage%" - set "OutputFile=%rcfi%\Template\sample\%TName%.ico" + set "OutputFile=%rcfi%\templates\samples\%TName%.ico" cls goto FI-Template-TestMode ) @@ -987,9 +1017,9 @@ exit /b :FI-Template-Sample if /i "%referer%"=="FI-Generate" exit /b call :Config-UpdateVar -if not exist "%rcfi%\template\sample" md "%rcfi%\template\sample" +if not exist "%rcfi%\templates\samples" md "%rcfi%\templates\samples" set "InputFile=%TemplateSampleImage%" -set "OutputFile=%rcfi%\Template\sample\%TName%.ico" +set "OutputFile=%rcfi%\templates\samples\%TName%.ico" if /i "%Context%"=="IMG.Choose.Template" set "InputFile=%img%" REM if /i "%testmode%"=="yes" set "AlwaysGenerateSample=No" @@ -1038,14 +1068,14 @@ echo.&echo %TAB%Sample image selected: echo %ESC%- %c_%%TSampleName%%_% (%pp_%%size%%_%) echo. echo %TAB%%yy_%Generating all sample images..%_% -echo %TAB%"%rcfi%\template\sample\" +echo %TAB%"%rcfi%\templates\samples\" echo. -if not exist "%rcfi%\template\sample" md "%rcfi%\template\sample" -pushd "%rcfi%\template\sample" +if not exist "%rcfi%\templates\samples" md "%rcfi%\templates\samples" +pushd "%rcfi%\templates\samples" for %%I in (*.ico) do del "%%~fI" popd set /a TCount=0 -PUSHD "%rcfi%\template" +PUSHD "%rcfi%\templates" FOR %%T in (*.bat) do ( set /a TCount+=1 set "TName=%%~nT" @@ -1055,19 +1085,19 @@ PUSHD "%rcfi%\template" POPD echo %TAB%%i_%%yy_% Done! %_% if /i "%Context%"=="IMG.Template.Samples" ( - md "%rcfi%\template\sample\montage" 2>nul - for /f "tokens=*" %%I in ('dir /b "%rcfi%\template\sample\*.ico"') do ( - "%converter%" "%rcfi%\template\sample\%%~nxI" -define icon:auto-resize="256" "%rcfi%\template\sample\montage\%%~nI.ico" + md "%rcfi%\templates\samples\montage" 2>nul + for /f "tokens=*" %%I in ('dir /b "%rcfi%\templates\samples\*.ico"') do ( + "%converter%" "%rcfi%\templates\samples\%%~nxI" -define icon:auto-resize="256" "%rcfi%\templates\samples\montage\%%~nI.ico" ) - "%montage%" -pointsize 3 -label "%%f" -density 300 -tile 4x0 -geometry +3+2 -border 1 -bordercolor rgba^(210,210,210,0.3^) -background rgba^(255,255,255,0.4^) "%rcfi%\template\sample\montage\*.ico" "%~dpn1-Folder_Samples.png" + "%montage%" -pointsize 3 -label "%%f" -density 300 -tile 4x0 -geometry +3+2 -border 1 -bordercolor rgba^(210,210,210,0.3^) -background rgba^(255,255,255,0.4^) "%rcfi%\templates\samples\montage\*.ico" "%~dpn1-Folder_Samples.png" explorer.exe "%~dpn1-Folder_Samples.png" - rd /s /q "%rcfi%\template\sample\montage" -) else explorer.exe "%rcfi%\template\sample\" + rd /s /q "%rcfi%\templates\samples\montage" +) else explorer.exe "%rcfi%\templates\samples\" goto options :FI-Template-Sample-All-Generate set "InputFile=%FITSA%" -set "OutputFile=%rcfi%\template\sample\%TName%.ico" +set "OutputFile=%rcfi%\templates\samples\%TName%.ico" if %TCount% LSS 10 echo %TAB%%gn_% %TCount%%_%%ESC%> %cc_%%TName%%ESC% if %TCount% GTR 9 echo %TAB%%gn_%%TCount%%_%%ESC%> %cc_%%TName%%ESC%%r_% PUSHD "%TSamplePath%" @@ -1096,7 +1126,7 @@ set "TnameXfor=%TnameXfor:&=^&%" exit /b :FI-Template-TestMode -set "OutputFile=%rcfi%\template\sample\%TName%.png" +set "OutputFile=%rcfi%\templates\samples\%TName%.png" if /i "%referer%"=="FI-Generate" exit /b echo.&echo.&echo. if /i not "%TemplateTestMode-AutoExecute%"=="yes" set /a "TestCount+=1" @@ -1555,7 +1585,7 @@ goto options :IMG-Generate_icon-FileList if /i "%IMGext%"==".ico" set "IMGext=%y_%%IMGext%" if /i "%IMGext%"==".png" set "IMGext=%cc_%%IMGext%" -echo %_%%TAB%%ESC%%-%%c_%%IMGname%%bb_%%IMGext% %g_%(%pp_%%size%%g_%)%ESC%%r_% +echo %_%%TAB%%ESC%%c_%%IMGname%%bb_%%IMGext% %g_%(%pp_%%size%%g_%)%ESC%%r_% exit /b :IMG-Generate_icon-Act @@ -1657,7 +1687,10 @@ set "Action=Start" &cls&goto IMG-Convert :IMG-Convert-Action set Size_B=1 -set "ImgOutput=%ImgName%%ImgExtNew%" +set "ImgOutput=%ImgName%%nTag%%ImgExtNew%" +if exist "%ImgPath%%ImgOutput%" set /a numCount+=1 +if exist "%ImgPath%%ImgOutput%" set "nTag= (%numCount%)"&goto IMG-Convert-Action + "%converter%" "%ImgPath%%ImgName%%ImgExt%" %convertcode% "%ImgPath%%ImgOutput%" if "%ImgExt%"==".ico" ( @@ -1687,7 +1720,7 @@ if exist "%ImgPath%%ImgOutput%" ( call :IMG-Convert-FileList ) ) else ( - echo %TAB%-%ESC%%c_%%ImgName%%ImgExtNew%%g_% (%r_%Convert Fail!%g_%)%_% + echo %TAB%-%ESC%%c_%%ImgName%%nTag%%ImgExt%%g_% (%r_%Convert Fail!%g_%)%_% exit /b ) if %Size_B% LSS 100 ( @@ -1837,12 +1870,10 @@ if not defined timestart call :timer-start&set "Action=Start" &cls&goto IMG-Resi :IMG-Resize-Action set size_B=1 -set "ImgOutput=%ImgName%%ImgTag%%num_tag%%ImgExt%" -if exist "%ImgPath%%ImgOutput%" ( - set /a numTag+=1 - set "num_tag=(%numTag%) - goto IMG-Resize-Action -) +set "ImgOutput=%ImgName%%ImgTag%%nTag%%ImgExt%" +if exist "%ImgPath%%ImgOutput%" set /a numCount+=1 +if exist "%ImgPath%%ImgOutput%" set "nTag= (%numCount%)"&goto IMG-Resize-Action + "%converter%" "%ImgPath%%ImgName%%ImgExt%" %ImgResizeCode% "%ImgPath%%ImgOutput%" if exist "%ImgPath%%ImgOutput%" ( for %%I in ("%ImgPath%%ImgOutput%") do ( @@ -1855,7 +1886,7 @@ if exist "%ImgPath%%ImgOutput%" ( ) if not %size_B% LSS 10 ( - echo %TAB%%ESC%- %c_%%ImgName%%cc_%%ImgTag%%num_tag%%c_%%ImgExt%%g_% (%pp_%%size%%g_%)%ESC%%r_% + echo %TAB%%ESC%- %c_%%ImgName%%cc_%%ImgTag%%nTag%%c_%%ImgExt%%g_% (%pp_%%size%%g_%)%ESC%%r_% ) else ( echo %TAB%%ESC%- %c_%%ImgName%%ImgExt%%g_% (%r_%Convert Fail!%g_%)%_% del "%ImgPath%%ImgOutput%" @@ -2004,12 +2035,10 @@ if not defined timestart call :timer-start&set "Action=Start" &cls&goto IMG-Comp :IMG-Compress-Action set size_B=1 -set "ImgOutput=%ImgName%%ImgTag%%num_tag%%ImgExt%" -if exist "%ImgPath%%ImgOutput%" ( - set /a numTag+=1 - set "num_tag=(%numTag%) - goto IMG-Resize-Action -) +set "ImgOutput=%ImgName%%ImgTag%%nTag%%ImgExt%" +if exist "%ImgPath%%ImgOutput%" set /a numCount+=1 +if exist "%ImgPath%%ImgOutput%" set "nTag= (%numCount%)"&goto IMG-Compress-Action + "%converter%" "%ImgPath%%ImgName%%ImgExt%" %ImgCompressCode% "%ImgPath%%ImgOutput%" if exist "%ImgPath%%ImgOutput%" ( for %%I in ("%ImgPath%%ImgOutput%") do ( @@ -2022,7 +2051,7 @@ if exist "%ImgPath%%ImgOutput%" ( ) if not %size_B% LSS 1000 ( - echo %TAB%%ESC%- %c_%%ImgName%%cc_%%ImgTag%%num_tag%%c_%%ImgExt%%g_% (%pp_%%size%%g_%)%ESC%%r_% + echo %TAB%%ESC%- %c_%%ImgName%%cc_%%ImgTag%%nTag%%c_%%ImgExt%%g_% (%pp_%%size%%g_%)%ESC%%r_% ) else ( echo %TAB%-%ESC%%c_%%ImgName%%ImgExt%%g_% (%r_%Convert Fail!%g_%)%_% del "%ImgPath%%ImgOutput%" @@ -2191,7 +2220,7 @@ goto options :Config-Save REM Save current config to RCFI.config.ini -if exist "%Template%" (for %%T in ("%Template%") do set "Template=%%~nT") else (set "Template=%rcfi%\template\(none).bat") +if exist "%Template%" (for %%T in ("%Template%") do set "Template=%%~nT") else (set "Template=%rcfi%\templates\(none).bat") if exist "%TemplateForICO%" (for %%T in ("%TemplateForICO%") do set "TemplateForICO=%%~nT") else (set "TemplateForICO=(none)") if exist "%TemplateForPNG%" (for %%T in ("%TemplateForPNG%") do set "TemplateForPNG=%%~nT") else (set "TemplateForPNG=insert a template name to use for .png files") if exist "%TemplateForJPG%" (for %%T in ("%TemplateForJPG%") do set "TemplateForJPG=%%~nT") else (set "TemplateForJPG=insert a template name to use for .jpg files") @@ -2228,10 +2257,10 @@ if not defined TemplateIconSize set "TemplateIconSize=Auto" echo DrivePath="%cd%" )>"%~dp0RCFI.config.ini" if /i "%TemplateIconSize%"=="Auto" set "TemplateIconSize=" -set "Template=%rcfi%\template\%Template:"=%.bat" -set "TemplateForICO=%rcfi%\template\%TemplateForICO:"=%.bat" -set "TemplateForPNG=%rcfi%\template\%TemplateForPNG:"=%.bat" -set "TemplateForJPG=%rcfi%\template\%TemplateForJPG:"=%.bat" +set "Template=%rcfi%\templates\%Template:"=%.bat" +set "TemplateForICO=%rcfi%\templates\%TemplateForICO:"=%.bat" +set "TemplateForPNG=%rcfi%\templates\%TemplateForPNG:"=%.bat" +set "TemplateForJPG=%rcfi%\templates\%TemplateForJPG:"=%.bat" EXIT /B :Config-Load @@ -2251,10 +2280,10 @@ if exist %TemplateForPNG% (for %%T in (%TemplateForPNG%) do set TemplateForPNG=" if exist %TemplateForJPG% (for %%T in (%TemplateForJPG%) do set TemplateForJPG="%%~nT") set "DrivePath=%DrivePath:"=%" set "Keywords=%Keywords:"=%" -set "Template=%rcfi%\template\%Template:"=%.bat" -set "TemplateForICO=%rcfi%\template\%TemplateForICO:"=%.bat" -set "TemplateForPNG=%rcfi%\template\%TemplateForPNG:"=%.bat" -set "TemplateForJPG=%rcfi%\template\%TemplateForJPG:"=%.bat" +set "Template=%rcfi%\templates\%Template:"=%.bat" +set "TemplateForICO=%rcfi%\templates\%TemplateForICO:"=%.bat" +set "TemplateForPNG=%rcfi%\templates\%TemplateForPNG:"=%.bat" +set "TemplateForJPG=%rcfi%\templates\%TemplateForJPG:"=%.bat" set "TemplateAlwaysAsk=%TemplateAlwaysAsk:"=%" set "TemplateTestMode=%TemplateTestMode:"=%" set "TemplateTestMode-AutoExecute=%TemplateTestMode-AutoExecute:"=%" @@ -2514,6 +2543,7 @@ REM installing -> create "uninstall.bat" if /i "%setup_select%"=="1" ( echo cd /d "%%~dp0">"%RCFID%" echo set "Setup=Deactivate" ^&call "%name%" ^|^|pause^>nul :%version:v0.=%>>"%RCFID%" + del /q "%RCFI%\#๐๐€๐’๐’๐–๐Ž๐‘๐ƒ ๐Ÿ๐Ÿ๐Ÿ‘๐Ÿ’" 2>nul echo %w_%%name% %version% %cc_%Activated%_% echo %g_%Folder Icon Tools has been added to the right-click menus. %_% if not defined input (goto intro) @@ -2946,4 +2976,4 @@ rem Generating setup_*.reg echo "SubCommands"="RCFI.IMG-Set.As.Folder.Icon;RCFI.IMG-Choose.and.Set.As;RCFI.IMG.Generate.Icon;RCFI.IMG.Generate.PNG;RCFI.IMG.Template.Samples;RCFI.IMG.Choose.Template;RCFI.IMG.Edit.Template;RCFI.IMG-Convert;RCFI.IMG-Compress;RCFI.IMG-Resize;" )>"%Setup_Write%" -exit /b +exit /b \ No newline at end of file diff --git a/README.md b/README.md index 1afefda..13635ee 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Adds "Folder Icon Tools" to your right-click menus, allowing you to easily custo -|![](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/683be449-8e14-4f2f-aecc-6d0311d9c05c) Folder Right-click ![RCFI-Folder_Menu](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/8703384d-3c81-45fc-87cb-befa5891718c)|![](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/683be449-8e14-4f2f-aecc-6d0311d9c05c) Background Right-click ![RCFI-Background_Menu](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/253aea77-5c6d-4fdd-bbf7-4819cf2270a8)|![](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/683be449-8e14-4f2f-aecc-6d0311d9c05c) Image Right-click ![RCFI-Image_Menu](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/52230ba6-cee8-4bf7-903b-6e5751acc207)| +|![](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/683be449-8e14-4f2f-aecc-6d0311d9c05c) Folder Right-click
![RCFI-Folder_Menu](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/8703384d-3c81-45fc-87cb-befa5891718c)|![](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/683be449-8e14-4f2f-aecc-6d0311d9c05c) Background Right-click
![RCFI-Background_Menu](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/253aea77-5c6d-4fdd-bbf7-4819cf2270a8)|![](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/683be449-8e14-4f2f-aecc-6d0311d9c05c) Image Right-click
![RCFI-Image_Menu](https://github.com/ramdany7/RightClickFolderIconTools/assets/113004105/52230ba6-cee8-4bf7-903b-6e5751acc207)| | :--- | :--- | :--- |

@@ -51,57 +51,106 @@ You can choose the template you want to generate the folder icon, it will automa
Here's some samples of the template i've made. - +

+ย ย Files inside folderย ย 
+Sample files +

+ +
+ +

+ย ย Generated folder iconย ย 
+

- - + + + + - - - - + + +
ย ย ย ย ย Folder
- +
+

+ Generated image, Template: (none) +
(none) +

ย ย ย ย ย Files inside folder
- +
+

+ Generated image, Template: DVDCase Transparent +
DVDCase Transparent +

+
+

+ Generated image, Template: DVDCase Bluray +
DVDCase Bluray +

+
+

+ Generated image, Template: Folder Vertical +
Folder Vertical +

+
+

+ Generated image, Template: Folder Horizontal +
Folder Horizontal +

-
-

Template: (none)

+

+ Generated image, Template: (Shadow Only) +
(Shadow Only) +

-
-

Template: (Shadow Only)

+

+ Generated image, Template: BeOrigin +
BeOrigin +

-
-

Template: DVDBox Dark

+

+ Generated image, Template: Windows 11 A +
Windows 11 A +

-
-

Template: DVDBox Light

+

+ Generated image, Template: Windows 11 Cover +
Windows 11 Cover +

-
-

Template: DVDCase Bluray

+

+ Generated image, Template: Windows 11 Cover +
Windows 11 Folderify +

-
-

Template: DVDCase Plastic

+

+ Generated image, Template: DiscArt +
DiscArt

-
-

Template: Folder Vertical

+

+ Generated image, Template: DVDBox Dark +
DVDBox Dark +

-
-

Template: Folder Horizontal

+

+ Generated image, Template: DVDBox Light +
DVDBox Light +

+

->_The samples above use '**\*Poster\*.jpg**' as the generated folder icon. Certain templates with specific configurations may combine additional files located within the same directory as the image to achieve the results as shown above. If the required additional files are not available, they will be ignored, and the folder icon will be generated without them._ +>_The samples above use '**\*Poster\*.jpg**' as the generated folder icon. Certain templates with specific configurations may combine additional files located within the folder directory to achieve the results as shown above. If the required additional files are not available, they will be ignored, and the folder icon will be generated without them._ To give you an idea of how it looks and how you can use it,
I've made a video that you can watch it [**Here**](https://www.youtube.com/watch?v=MT7BZlhRWfI).
@@ -110,9 +159,9 @@ I've made a video that you can watch it [**Here**](https://www.youtube.com/watch # Configurations ### ย ย ย ย ย Template Configuration -Some templates include configuration settings that can be customized according to your preferences. To modify the configuration, open the 'template file.bat' using a text editor and adjust the values. The 'template file.bat' can be found at `RCFI Tools\template\`. +Some templates include configuration settings that can be customized according to your preferences. To modify the configuration, open the 'template file.bat' using a text editor and adjust the values. The 'template file.bat' can be found at `RCFI Tools\templates\`. -Here are the available settings: +Here are some available settings: |Configuration|Options|Description| | :--- | :--- | :--- | |set "display-movieinfo= " |`yes` `no` | Search for a '***.nfo**' file located within the same directory as the selected image to get movie information.| @@ -133,7 +182,7 @@ Here are the available settings:
### ย ย ย ย ย RCFI Tools Configuration -The RCFI Tools Configuration can be found in `RCFI Tools\config.ini` and can be adjusted and modified using a text editor. +The RCFI Tools Configuration can be found in `RCFI Tools\RCFI.config.ini` and can be adjusted and modified using a text editor. Here are the available configuration options: @@ -161,7 +210,7 @@ In the end, My role involves is just bringing together the work and ideas of oth - This project was inspired by [Anime Icon Matcher 2018](http://www.mediafire.com/?nv3m231s8h9be) by serenity !29TgfcZgPU, which I used a lots in the past. - This project owes its existence to [ImageMagick](https://github.com/ImageMagick/ImageMagick), the tool that is use to process and edit images. - I utilize the [SingleInstanceAccumulator](https://github.com/Beej126/SingleInstanceAccumulator) by Beej126 to accumulate the selected items in Explorer so it doesn't make a new instance for each selected items. -- I use PSD templates by [em1l](https://www.deviantart.com/em1l), [saikuro](https://www.deviantart.com/saikuro), [mauricioestrella](https://www.deviantart.com/mauricioestrella) and [90scomics.com](http://www.90scomics.com) to create all available folder icon templates. -- While working on this project, I also drew some inspiration from [FolderIco](http://folderico.com) and [Raticon](http://jamedjo.github.io/Raticon) by Jamedjo.
+- I use PSD templates by [em1l](https://www.deviantart.com/em1l), [saikuro](https://www.deviantart.com/saikuro), [mauricioestrella](https://www.deviantart.com/mauricioestrella), [90scomics.com](http://www.90scomics.com) and [Jonathan Brimer](https://beoriginal.com/blog/free-folder-icon-photoshop-template) to create all available folder icon templates. +- While working on this project, I also drew some inspiration from [FolderIco](http://folderico.com), [Raticon](http://jamedjo.github.io/Raticon) and [Folderify](https://github.com/lgarron/folderify).
**_A big thank you to all mentioned above for their contributions._** diff --git a/images/- background.png b/images/- canvas.png similarity index 100% rename from images/- background.png rename to images/- canvas.png diff --git a/images/BeOriginal-BackFx.png b/images/BeOriginal-BackFx.png new file mode 100644 index 0000000..56d569e Binary files /dev/null and b/images/BeOriginal-BackFx.png differ diff --git a/images/BeOriginal-FrontFx.png b/images/BeOriginal-FrontFx.png new file mode 100644 index 0000000..4d2caf8 Binary files /dev/null and b/images/BeOriginal-FrontFx.png differ diff --git a/images/BeOriginal-back.png b/images/BeOriginal-back.png new file mode 100644 index 0000000..398dc01 Binary files /dev/null and b/images/BeOriginal-back.png differ diff --git a/images/BeOriginal-front.png b/images/BeOriginal-front.png new file mode 100644 index 0000000..86bbe34 Binary files /dev/null and b/images/BeOriginal-front.png differ diff --git a/images/BeOriginal-fx.png b/images/BeOriginal-fx.png new file mode 100644 index 0000000..32b17c0 Binary files /dev/null and b/images/BeOriginal-fx.png differ diff --git a/images/Win11A-Back-Gradient.png b/images/Win11A-Back-Gradient.png new file mode 100644 index 0000000..e68248d Binary files /dev/null and b/images/Win11A-Back-Gradient.png differ diff --git a/images/Win11A-Back.png b/images/Win11A-Back.png new file mode 100644 index 0000000..c72b737 Binary files /dev/null and b/images/Win11A-Back.png differ diff --git a/images/Win11A-Front-Bevel.png b/images/Win11A-Front-Bevel.png new file mode 100644 index 0000000..d0f5709 Binary files /dev/null and b/images/Win11A-Front-Bevel.png differ diff --git a/images/Win11A-Front-Gradient.png b/images/Win11A-Front-Gradient.png new file mode 100644 index 0000000..d8c65ad Binary files /dev/null and b/images/Win11A-Front-Gradient.png differ diff --git a/images/Win11A-Front.png b/images/Win11A-Front.png new file mode 100644 index 0000000..1132165 Binary files /dev/null and b/images/Win11A-Front.png differ diff --git a/images/Win11Cover-Front.png b/images/Win11Cover-Front.png new file mode 100644 index 0000000..d50d99c Binary files /dev/null and b/images/Win11Cover-Front.png differ diff --git a/images/Win11Cover.png b/images/Win11Cover.png new file mode 100644 index 0000000..0368c66 Binary files /dev/null and b/images/Win11Cover.png differ diff --git a/images/Win11Folderify.png b/images/Win11Folderify.png new file mode 100644 index 0000000..790fb94 Binary files /dev/null and b/images/Win11Folderify.png differ diff --git a/images/old/- background.png b/images/old/- background.png deleted file mode 100644 index 1b12080..0000000 Binary files a/images/old/- background.png and /dev/null differ diff --git a/images/old/- test.jpg b/images/old/- test.jpg deleted file mode 100644 index 053ef3c..0000000 Binary files a/images/old/- test.jpg and /dev/null differ diff --git a/images/old/- test.nfo b/images/old/- test.nfo deleted file mode 100644 index 46e7727..0000000 --- a/images/old/- test.nfo +++ /dev/null @@ -1,24 +0,0 @@ - - - - 8.8 - Testing - Generate - Sample - Template - 1280 - 640 - 2,00 - HEVC - V_MPEGH/ISO/HEVC - 7775 - 721 kb/s - .mkv - 24.000 - 10 - eng - aac - 82.4 kb/s - 2021 - 2021-10-27 - 127 min \ No newline at end of file diff --git a/images/old/- test.png b/images/old/- test.png deleted file mode 100644 index 1b57b54..0000000 Binary files a/images/old/- test.png and /dev/null differ diff --git a/images/old/bluray-case.png b/images/old/bluray-case.png deleted file mode 100644 index 3fe818b..0000000 Binary files a/images/old/bluray-case.png and /dev/null differ diff --git a/images/old/disc-vinyl.png b/images/old/disc-vinyl.png deleted file mode 100644 index 31c2b85..0000000 Binary files a/images/old/disc-vinyl.png and /dev/null differ diff --git a/images/old/dvdbox-dark.png b/images/old/dvdbox-dark.png deleted file mode 100644 index 4a3705c..0000000 Binary files a/images/old/dvdbox-dark.png and /dev/null differ diff --git a/images/old/dvdbox-plastic.png b/images/old/dvdbox-plastic.png deleted file mode 100644 index 8fc0645..0000000 Binary files a/images/old/dvdbox-plastic.png and /dev/null differ diff --git a/images/old/dvdbox-shine.png b/images/old/dvdbox-shine.png deleted file mode 100644 index 6b973e7..0000000 Binary files a/images/old/dvdbox-shine.png and /dev/null differ diff --git a/images/old/dvdbox.png b/images/old/dvdbox.png deleted file mode 100644 index b33322b..0000000 Binary files a/images/old/dvdbox.png and /dev/null differ diff --git a/images/old/folderhorizontal-main.png b/images/old/folderhorizontal-main.png deleted file mode 100644 index 2fd5e46..0000000 Binary files a/images/old/folderhorizontal-main.png and /dev/null differ diff --git a/images/old/folderhorizontal-mainfx.png b/images/old/folderhorizontal-mainfx.png deleted file mode 100644 index ac692b9..0000000 Binary files a/images/old/folderhorizontal-mainfx.png and /dev/null differ diff --git a/images/old/folderhorizontal-top.png b/images/old/folderhorizontal-top.png deleted file mode 100644 index 2100019..0000000 Binary files a/images/old/folderhorizontal-top.png and /dev/null differ diff --git a/images/old/folderhorizontal-topfx.png b/images/old/folderhorizontal-topfx.png deleted file mode 100644 index f7f2a73..0000000 Binary files a/images/old/folderhorizontal-topfx.png and /dev/null differ diff --git a/images/old/folderhorizontal-topshadow.png b/images/old/folderhorizontal-topshadow.png deleted file mode 100644 index 1ec2470..0000000 Binary files a/images/old/folderhorizontal-topshadow.png and /dev/null differ diff --git a/images/old/foldervertical-main.png b/images/old/foldervertical-main.png deleted file mode 100644 index d86d601..0000000 Binary files a/images/old/foldervertical-main.png and /dev/null differ diff --git a/images/old/foldervertical-mainfx.png b/images/old/foldervertical-mainfx.png deleted file mode 100644 index 1f0ef34..0000000 Binary files a/images/old/foldervertical-mainfx.png and /dev/null differ diff --git a/images/old/foldervertical-side.png b/images/old/foldervertical-side.png deleted file mode 100644 index ee57afd..0000000 Binary files a/images/old/foldervertical-side.png and /dev/null differ diff --git a/images/old/foldervertical-sidefx.png b/images/old/foldervertical-sidefx.png deleted file mode 100644 index d6ec2e5..0000000 Binary files a/images/old/foldervertical-sidefx.png and /dev/null differ diff --git a/images/old/foldervertical-sideshadow.png b/images/old/foldervertical-sideshadow.png deleted file mode 100644 index 0a4ce61..0000000 Binary files a/images/old/foldervertical-sideshadow.png and /dev/null differ diff --git a/images/old/star.png b/images/old/star.png deleted file mode 100644 index eb75996..0000000 Binary files a/images/old/star.png and /dev/null differ diff --git a/resources/montage.exe b/resources/montage.exe index 20894f1..f12b9f2 100644 Binary files a/resources/montage.exe and b/resources/montage.exe differ diff --git a/template/old/(Shadow Only).bat b/template/old/(Shadow Only).bat deleted file mode 100644 index 87d5200..0000000 --- a/template/old/(Shadow Only).bat +++ /dev/null @@ -1,33 +0,0 @@ -:: Template Info -::=================================== -::# Output image will be the same as source image, without frame or anything -::# but with added shadow and image posisition will be in the center. -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::=================================== -set "testmode=no" - -set "image-size=245x245" -set "image-position=CENTER" -:: |----------------------------------| -:: | image-position | -:: | Northwest North Northeast | -:: | West Center East | -:: | SouthWest South SouthEast | -:: |----------------------------------| - -set "shadow-color=BLACK" -set "shadow-opacity=70" -set "shadow-blur=1.3" -set "shadow-x-position=+2" -set "shadow-y-position=+3.5" - - -:: Template Command -::=================================== -"%Converter%" "%inputfile%" -resize %image-size% ^( +clone -background %shadow-color% -shadow %shadow-opacity%x%shadow-blur%%shadow-x-position%%shadow-y-position% ^) +swap -background none -layers merge -gravity %image-position% -extent 256x256 "%outputfile%" - - - diff --git a/template/old/(none).bat b/template/old/(none).bat deleted file mode 100644 index cb4208e..0000000 --- a/template/old/(none).bat +++ /dev/null @@ -1,11 +0,0 @@ -:: Template Info -::=================================== -::# The output image will be identical to the source image, without a frame or shadow. -::# Additionally, the image will be positioned at the center of a 1:1 image ratio. -::# -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Command -::=================================== -"%Converter%" "%inputfile%" -resize 256x256 -background none -gravity CENTER -extent 256x256 "%outputfile%" \ No newline at end of file diff --git a/template/old/Bluray Case.bat b/template/old/Bluray Case.bat deleted file mode 100644 index 01461ea..0000000 --- a/template/old/Bluray Case.bat +++ /dev/null @@ -1,170 +0,0 @@ -:: Template Info -::=================================== -::# "Bluray Case" PSD Template by Saikuro (www.deviantart.com/saikuro) -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -:: Note: -:: - To see a list of fonts available in this system, you -:: can check it in the "RCFI Tools\magick\font_list.bat" file. -:: -::--------- Test Mode ------- -set "testmode=no" -set "testmode-auto-execute=yes" - -::--------- Show Info ------- -set "display-discimage=no" -set "display-movieinfo=no" -set "Show-Rating=yes" -set "Show-Genre=yes" -set "genre-characters-limit=25" - -set "frame-image=%rcfi%\img\bluray-case.png" -set "star-image=%rcfi%\img\star.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -if exist "*.nfo" ( - for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) - ) -) else goto Layer -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - - -:: Proceed to edit and convert the image using ImageMagick -:Layer -:LAYER-BACKGROUND -:: Get background image -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 256x256! ^ - -background none ^ - -extent 256x256 ^ - ) -compose Over - - -:LAYER-POSTER -set POSTER-IMAGE-CODE= ( "%inputfile%" ^ - -scale 170x219! ^ - -background none ^ - -gravity Northwest ^ - -geometry +39+24 ^ - ) -compose Over -composite - - -:LAYER-TEMPLATE_FRAME -set FRAME-IMAGE-CODE= ( "%frame-image%" ^ - -resize 256x256! ^ - ) -compose Over -composite - - -:LAYER-THE_SHADOW -set THE-SHADOW-CODE= ( ^ - +clone -background BLACK -shadow 0x2+2+2.5 ^ - ) +swap -background none -layers merge -extent 256x256 - - -:LAYER-RATING-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 44x43! ^ - -extent 256x256-178-210 ^ - ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - - -:LAYER-RATING-TEXT -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 17 ^ - label:"%rating%" ^ - -extent 256x256-187-225 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - -:LAYER-GENRE -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill rgba(0,0,0,1) ^ - -pointsize 13 ^ - -gravity SouthEast ^ - -geometry +69-2 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 80x1+0.3+0.3 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 80x1-0.3-0.3 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 80x1-0.3+0.3 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 80x1+0.3-0.3 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %DISC-IMAGE-CODE% ^ - %POSTER-IMAGE-CODE% ^ - %FRAME-IMAGE-CODE% ^ - %THE-SHADOW-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/old/DVD Box - DARK.bat b/template/old/DVD Box - DARK.bat deleted file mode 100644 index 728e8c6..0000000 --- a/template/old/DVD Box - DARK.bat +++ /dev/null @@ -1,180 +0,0 @@ -:: Template Info -::=================================== -::# "bluray-case.png" Template design by Saikuro (www.deviantart.com/saikuro) -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -:: Note: -:: - To see a list of fonts available in this system, you -:: can check it in the "RCFI Tools\magick\font_list.bat" file. -:: -::--------- Test Mode ------- -set "testmode=no" -set "testmode-auto-execute=yes" -::--------- Display --------- -set "display-discimage=yes" -set "display-movieinfo=no" -set "show-Rating=yes" -set "show-Genre=yes" -set "genre-characters-limit=33" -::------ Image Source ------- -set "frame-image=%rcfi%\img\dvdbox-dark.png" -set "star-image=%rcfi%\img\star.png" -set "disc-image=%rcfi%\img\disc-vinyl.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -if exist "*.nfo" ( - for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) - ) -) else goto Layer -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - - -:: Proceed to edit and convert the image using ImageMagick -:Layer -:LAYER-BACKGROUND -:: Get background image -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 256x256! ^ - -background none ^ - -extent 256x256 ^ - ) -compose Over - - -:LAYER-DISCART -:: Get disc art image -if exist "*discart.png" ( - for %%D in (*discart.png) do set "discart=%%~fD" -) else set "discart=%disc-image%" - -:: Configure disc art image size, position, and shadows -set DISC-IMAGE-CODE= ( "%discart%" ^ - -scale 170x170! ^ - -background none ^ - -extent 256x256-80-42 ^ - ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%display-discimage%"=="yes" set "DISC-IMAGE-CODE=" - - -:LAYER-POSTER -set POSTER-IMAGE-CODE= ( "%inputfile%" ^ - -scale 174x243! ^ - -background none ^ - -gravity Northwest ^ - -geometry +7+5 ^ - ) -compose Over -composite - - -:LAYER-TEMPLATE_FRAME -set FRAME-IMAGE-CODE= ( "%frame-image%" ^ - -resize 256x256! ^ - ) -compose Over -composite - - -:LAYER-RATING-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 44x43! ^ - -extent 256x256-0-208 ^ - ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - -:LAYER-RATING-TEXT -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 17 ^ - label:"%rating%" ^ - -extent 256x256-9-223 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - -:LAYER-GENRE -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 13 ^ - -gravity Northwest ^ - -geometry +37+225 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 70x1+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 70x1-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1+0.6-0.6 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %DISC-IMAGE-CODE% ^ - %POSTER-IMAGE-CODE% ^ - %FRAME-IMAGE-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/old/DVD Box - MATTE.bat b/template/old/DVD Box - MATTE.bat deleted file mode 100644 index 3d6a5ff..0000000 --- a/template/old/DVD Box - MATTE.bat +++ /dev/null @@ -1,176 +0,0 @@ -:: Template Info -::=================================== -::# "dvdbox-disc.png" Edit by Ramdany, Design by em1l (www.deviantart.com/em1l) -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -:: Note: -:: - To see a list of fonts available in this system, you -:: can check it in the "RCFI Tools\magick\font_list.bat" file. -::--------- Test Mode ------- -set "testmode=no" -set "testmode-auto-execute=yes" - -::--------- Show Info ------- -set "display-discimage=yes" -set "display-movieinfo=no" -set "Show-Rating=yes" -set "Show-Genre=yes" -set "genre-characters-limit=33" - -set "frame-image=%rcfi%\img\dvdbox.png" -set "star-image=%rcfi%\img\star.png" -set "disc-image=%rcfi%\img\disc-vinyl.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -if exist "*.nfo" ( - for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) - ) -) else goto Layer -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - -:Layer -:LAYER-BACKGROUND -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 256x256! ^ - -background none ^ - -extent 256x256 ^ - ) -compose Over - -:LAYER-DISC_IMAGE -if exist "*discart.png" ( - for %%D in (*discart.png) do set "discart=%%~fD" -) else set "discart=%disc-image%" -set DISC-IMAGE-CODE= ( "%discart%" ^ - -scale 170x170! ^ - -background none ^ - -extent 256x256-82-42 ^ - ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%display-discimage%"=="yes" set "DISC-IMAGE-CODE=" - - -:LAYER-POSTER_IMAGE -set POSTER-IMAGE-CODE= ( "%inputfile%" ^ - -scale 170x242! ^ - -background none ^ - -gravity Northwest ^ - -geometry +3+5 ^ - ) -compose Over -composite - - -:LAYER-TEMPLATE_FRAME -set FRAME-IMAGE-CODE= ( "%frame-image%" ^ - -resize 256x256! ^ - ) -compose Over -composite - - -:LAYER-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 44x43! ^ - -extent 256x256-0-208 ^ - ( +clone -background BLACK% ^ - -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - - -:LAYER-RATING_TEXT -if /i not "%Show-Rating%" EQU "yes" goto LAYER-5 -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 17 ^ - label:"%rating%" ^ - -extent 256x256-9-223 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - - -:LAYER-GENRE_TEXT -if /i not "%Show-Genre%" EQU "yes" goto TemplateCommand -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 13 ^ - -gravity Northwest ^ - -geometry +37+225 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 70x1+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 70x1-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1+0.6-0.6 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %DISC-IMAGE-CODE% ^ - %POSTER-IMAGE-CODE% ^ - %FRAME-IMAGE-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/old/DVD Box - SHINE.bat b/template/old/DVD Box - SHINE.bat deleted file mode 100644 index f5270f2..0000000 --- a/template/old/DVD Box - SHINE.bat +++ /dev/null @@ -1,180 +0,0 @@ -:: Template Info -::=================================== -::# "dvdbox-disc.png" Edit by Ramdany, Design by em1l (www.deviantart.com/em1l) -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -:: Note: -:: - To see a list of fonts available in this system, you -:: can check it in the "RCFI Tools\magick\font_list.bat" file. -::--------- Test Mode ------- -set "testmode=no" -set "testmode-auto-execute=yes" - -::--------- Show Info ------- -set "display-discimage=yes" -set "display-movieinfo=yesh" -set "Show-Rating=yes" -set "Show-Genre=yes" -set "genre-characters-limit=33" - -set "frame-image=%rcfi%\img\dvdbox-shine.png" -set "star-image=%rcfi%\img\star.png" -set "disc-image=%rcfi%\img\disc-vinyl.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -if exist "*.nfo" ( - for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) - ) -) else goto Layer -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - - -:: Proceed to edit and convert the image using ImageMagick -:Layer -:LAYER-BACKGROUND -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 256x256! ^ - -background none ^ - -extent 256x256 ^ - ) -compose Over - -:LAYER-DISC_IMAGE -if exist "*discart.png" ( - for %%D in (*discart.png) do set "discart=%%~fD" -) else set "discart=%disc-image%" -set DISC-IMAGE-CODE= ( "%discart%" ^ - -scale 170x170! ^ - -background none ^ - -extent 256x256-82-42 ^ - ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%display-discimage%"=="yes" set "DISC-IMAGE-CODE=" - - -:LAYER-POSTER_IMAGE -set POSTER-IMAGE-CODE= ( "%inputfile%" ^ - -scale 170x242! ^ - -background none ^ - -gravity Northwest ^ - -geometry +3+5 ^ - ) -compose Over -composite - - -:LAYER-TEMPLATE_FRAME -set FRAME-IMAGE-CODE= ( "%frame-image%" ^ - -resize 256x256! ^ - ) -compose Over -composite - - -:LAYER-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 44x43! ^ - -extent 256x256-0-208 ^ - ( +clone -background BLACK% ^ - -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - - -:LAYER-RATING_TEXT -if /i not "%Show-Rating%" EQU "yes" goto LAYER-5 -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 17 ^ - label:"%rating%" ^ - -extent 256x256-9-223 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - - -:LAYER-GENRE_TEXT -if /i not "%Show-Genre%" EQU "yes" goto TemplateCommand -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 13 ^ - -gravity Northwest ^ - -geometry +37+225 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 70x1+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 70x1-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1+0.6-0.6 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %DISC-IMAGE-CODE% ^ - %POSTER-IMAGE-CODE% ^ - %FRAME-IMAGE-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/old/DVD Box - Transparent Plastic.bat b/template/old/DVD Box - Transparent Plastic.bat deleted file mode 100644 index b7227c0..0000000 --- a/template/old/DVD Box - Transparent Plastic.bat +++ /dev/null @@ -1,176 +0,0 @@ -:: Template Info -::=================================== -::# "dvdbox-disc.png" Edit by Ramdany, Design by em1l (www.deviantart.com/em1l) -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -:: Note: -:: - To see a list of fonts available in this system, you -:: can check it in the "RCFI Tools\magick\font_list.bat" file. -::--------- Test Mode ------- -set "testmode=yes" -set "testmode-auto-execute=yes" - -::--------- Show Info ------- -set "display-discimage=no" -set "display-movieinfo=no" -set "Show-Rating=yes" -set "Show-Genre=yes" -set "genre-characters-limit=26" - -set "frame-image=%rcfi%\img\dvdbox-plastic.png" -set "star-image=%rcfi%\img\star.png" -set "disc-image=%rcfi%\img\disc-vinyl.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -if exist "*.nfo" ( - for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) - ) -) else goto Layer -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - - -:: Proceed to edit and convert the image using ImageMagick -:Layer -:LAYER-BACKGROUND -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 256x256! ^ - -background none ^ - -extent 256x256 ^ - ) -compose Over - -:LAYER-DISC_IMAGE -if exist "*discart.png" ( - for %%D in (*discart.png) do set "discart=%%~fD" -) else set "discart=%disc-image%" -set DISC-IMAGE-CODE= ( "%discart%" ^ - -scale 170x170! ^ - -background none ^ - -extent 256x256-8-42 ^ - ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%display-discimage%"=="yes" set "DISC-IMAGE-CODE=" - - -:LAYER-POSTER_IMAGE -set POSTER-IMAGE-CODE= ( "%inputfile%" ^ - -scale 168x237! ^ - -background none ^ - -gravity Northwest ^ - -geometry +54+7 ^ - ) -compose Over -composite - - -:LAYER-TEMPLATE_FRAME -set FRAME-IMAGE-CODE= ( "%frame-image%" ^ - -resize 256x256! ^ - ) -compose Over -composite - - -:LAYER-RATING-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 44x43! ^ - -extent 256x256-187-210 ^ - ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - - -:LAYER-RATING-TEXT -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 17 ^ - label:"%rating%" ^ - -extent 256x256-196-225 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 256x256 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - -:LAYER-GENRE_TEXT -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill rgba(0,0,0,1) ^ - -pointsize 13 ^ - -gravity SouthEast ^ - -geometry +60-2 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 80x1+0.3+0.3 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 80x1-0.3-0.3 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 80x1-0.3+0.3 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 80x1+0.3-0.3 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %DISC-IMAGE-CODE% ^ - %POSTER-IMAGE-CODE% ^ - %FRAME-IMAGE-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/old/Folder - Horizontal.bat b/template/old/Folder - Horizontal.bat deleted file mode 100644 index ea88949..0000000 --- a/template/old/Folder - Horizontal.bat +++ /dev/null @@ -1,279 +0,0 @@ -:: Template Info -::=================================== -::# "Folder - Horizontal" PSD Template by 90scomics.com -::# Convert and edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -::--------- Test Mode ------- -set "testmode=no" -set "testmode-auto-execute=yes" -::--------- Display --------- -set "display-discimage=no" -set "display-movieinfo=no" -set "Show-Rating=yes" -set "Show-Genre=yes" -set "genre-characters-limit=26" -set "show-clearArt=no" -set "use-Logo-instead-folderName=no" -set "FolderNameShort-characters-limit=10" -set "FolderNameLong-characters-limit=38" -::------ Image source ------- -set "folderhorizontal-top=%rcfi%\img\folderhorizontal-top.png" -set "folderhorizontal-topfx=%rcfi%\img\folderhorizontal-topfx.png" -set "folderhorizontal-topshadow=%rcfi%\img\folderhorizontal-topshadow.png" -set "folderhorizontal-main=%rcfi%\img\folderhorizontal-main.png" -set "folderhorizontal-mainfx=%rcfi%\img\folderhorizontal-mainfx.png" -set "star-image=%rcfi%\img\star.png" -set "disc-image=%rcfi%\img\disc-vinyl.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -for %%F in ("%cd%") do set "foldername=%%~nxF" -set "FolNamShort=%foldername%" -set "FolNamShortLimit=%FolderNameShort-characters-limit%" -set /a "FolNamShortLimit=%FolNamShortLimit%+1" -set "FolNamLong=%foldername%" -set "FolNamLongLimit=%FolderNameLong-characters-limit%" -set /a "FolNamLongLimit=%FolNamLongLimit%+1" -:GetInfo-FolderName-Short -set /a FolNamShortCount+=1 -if not "%_FolNamShort%"=="%FolderName%" ( - call set "_FolNamShort=%%FolderName:~0,%FolNamShortCount%%%" - goto GetInfo-FolderName-Short -) -set /A "FolNamShortLimiter=%FolNamShortLimit%-4" -if %FolNamShortCount% GTR %FolNamShortLimit% call set "FolNamShort=%%FolderName:~0,%FolNamShortLimiter%%%..." -:GetInfo-FolderName-Long -set /a FolNamLongCount+=1 -if not "%_FolNamLong%"=="%FolderName%" ( - call set "_FolNamLong=%%FolderName:~0,%FolNamLongCount%%%" - goto GetInfo-FolderName-Long -) -set /A "FolNamLongLimiter=%FolNamLongLimit%-4" -if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." - -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) -) -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - -:Layer -:LAYER-BACKGROUND -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 512x512! ^ - -background none ^ - -extent 512x512 ^ - ) -compose Over - - -:LAYER-DISC_IMAGE -if exist "*discart.png" ( - for %%D in (*discart.png) do set "discart=%%~fD" -) else set "discart=%disc-image%" -set DISC-IMAGE-CODE= ( "%discart%" ^ - -scale 300x300! ^ - -background none ^ - -gravity Northwest ^ - -geometry +110+74 ^ - ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ - +swap -background none -layers merge -extent 512x512 ^ - ) -compose Over -composite - -if /i not "%display-discimage%"=="yes" set "DISC-IMAGE-CODE=" - - -:LAYER-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 75x75! ^ - -gravity Northwest ^ - -geometry +5+382 ^ - ( +clone -background BLACK% ^ - -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 512x512 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - - -:LAYER-RATING_TEXT -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 26 ^ - label:"%rating%" ^ - -gravity Northwest ^ - -geometry +23+411 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 512x512 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - - -:LAYER-GENRE_TEXT -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 25 ^ - -gravity Northwest ^ - -geometry +67+418 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 70x1+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 70x1-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1+0.6-0.6 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - -:LAYER-LOGO_IMAGE -if exist "*Logo.png" ( - for %%D in (*Logo.png) do set "Logo=%%~fD" -) else set "Logo=" -set Logo-IMAGE-CODE= ( "%Logo%" ^ - -scale 160x55! ^ - -background none ^ - -gravity Northwest ^ - -geometry +51+86 ^ - ) -compose Over -composite -if not defined Logo set "Logo-IMAGE-CODE=" -if /i not "%use-Logo-instead-folderName%"=="yes" set "Logo-IMAGE-CODE=" - -:LAYER-CLEARART_IMAGE -if exist "*clearart.png" ( - for %%D in (*clearart.png) do set "clearart=%%~fD" -) else set "clearart=" -set CLEARART-IMAGE-CODE= ( "%clearart%" ^ - -scale 248x ^ - -background none ^ - -gravity Northwest ^ - -geometry +223+3 ^ - ) -compose Over -composite -if not defined clearart set "CLEARART-IMAGE-CODE=" -if /i not "%show-clearArt%"=="yes" set "CLEARART-IMAGE-CODE=" - -:LAYER-POSTER_TOP -set POSTER-TOP-CODE= ( ^ - "%inputfile%" ^ - -scale 512x512! ^ - -blur 0x19 ^ - "%folderhorizontal-TOP%" ) -compose over -composite ^ - ( "%folderhorizontal-TOPfx%" -scale 512x512! ) -compose over -composite - - -:LAYER-FOLDER_NAME -set FOLDER-NAME-SHORT-CODE= ^ - ( ^ - -font Arial-Bold ^ - -fill white ^ - -density 420 ^ - -pointsize 5 ^ - -gravity Northwest ^ - -geometry +20+44 ^ - label:"%FolNamShort%" ^ - ( +clone -background BLACK -shadow 10x5+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5+0.6-0.6 ) +swap -background none -layers merge ^ - ) -composite - -set FOLDER-NAME-LONG-CODE= ^ - ( ^ - -font Arial-Bold ^ - -fill white ^ - -density 450 ^ - -pointsize 3 ^ - -kerning 2 ^ - -gravity Northwest ^ - -geometry -10+80 ^ - label:"%FolNamLong%" ^ - ( +clone -background BLACK -shadow 10x5+0.2+0.2 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.2-0.2 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.2+0.2 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5+0.2-0.2 ) +swap -background none -layers merge ^ - ) -composite -if %FolNamShortCount% LEQ %FolNamShortLimit% set "FOLDER-NAME-LONG-CODE=" -if defined Logo-IMAGE-CODE set "FOLDER-NAME-LONG-CODE=" &set "FOLDER-NAME-SHORT-CODE=" - -:LAYER-TOP-POSTER-SHADOW -set POSTER-TOP-SHADOW-CODE= ( "%folderhorizontal-TOPshadow%" -scale 512x512! ) -compose over -composite - - -:LAYER-POSTER-MAIN -set POSTER-MAIN-CODE= ( ^ - "%inputfile%" ^ - -scale 495x307! ^ - -gravity Northwest ^ - -geometry +8+141 ^ - "%folderhorizontal-main%" ) -compose over -composite ^ - ( "%folderhorizontal-mainfx%" -scale 512x512! ) -compose over -composite - - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %POSTER-TOP-CODE% ^ - %FOLDER-NAME-SHORT-CODE% ^ - %FOLDER-NAME-LONG-CODE% ^ - %Logo-IMAGE-CODE% ^ - %DISC-IMAGE-CODE% ^ - %CLEARART-IMAGE-CODE% ^ - %POSTER-TOP-SHADOW-CODE% ^ - %POSTER-MAIN-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - -scale 256x256! ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/old/Folder - Vertical.bat b/template/old/Folder - Vertical.bat deleted file mode 100644 index 641deb3..0000000 --- a/template/old/Folder - Vertical.bat +++ /dev/null @@ -1,283 +0,0 @@ -:: Template Info -::=================================== -::# "Folder - Vertical" PSD Template by 90scomics.com -::# Convert and Edit using ImageMagick. -::# ------------------------------------------------------------------- - -:: Template Config -::======================================================== -::--------- Test Mode ------- -set "testmode=no" -set "testmode-auto-execute=yes" -::--------- Display --------- -set "display-discimage=no" -set "display-movieinfo=no" -set "Show-Rating=yes" -set "Show-Genre=yes" -set "genre-characters-limit=26" -set "show-clearArt=no" -set "use-Logo-instead-folderName=no" -set "FolderNameShort-characters-limit=11" -set "FolderNameLong-characters-limit=40" -::------ Image source ------- -set "foldervertical-side=%rcfi%\img\foldervertical-side.png" -set "foldervertical-sidefx=%rcfi%\img\foldervertical-sidefx.png" -set "foldervertical-sideshadow=%rcfi%\img\foldervertical-sideshadow.png" -set "foldervertical-main=%rcfi%\img\foldervertical-main.png" -set "foldervertical-mainfx=%rcfi%\img\foldervertical-mainfx.png" -set "star-image=%rcfi%\img\star.png" -set "disc-image=%rcfi%\img\disc-vinyl.png" -set "background-image=%rcfi%\img\- background.png" -::======================================================== - - - -:: Get Movie info from .nfo file -:GetInfo -setlocal -for %%F in ("%cd%") do set "foldername=%%~nxF" -set "FolNamShort=%foldername%" -set "FolNamShortLimit=%FolderNameShort-characters-limit%" -set /a "FolNamShortLimit=%FolNamShortLimit%+1" -set "FolNamLong=%foldername%" -set "FolNamLongLimit=%FolderNameLong-characters-limit%" -set /a "FolNamLongLimit=%FolNamLongLimit%+1" -:GetInfo-FolderName-Short -set /a FolNamShortCount+=1 -if not "%_FolNamShort%"=="%FolderName%" ( - call set "_FolNamShort=%%FolderName:~0,%FolNamShortCount%%%" - goto GetInfo-FolderName-Short -) -set /A "FolNamShortLimiter=%FolNamShortLimit%-4" -if %FolNamShortCount% GTR %FolNamShortLimit% call set "FolNamShort=%%FolderName:~0,%FolNamShortLimiter%%%..." -:GetInfo-FolderName-Long -set /a FolNamLongCount+=1 -if not "%_FolNamLong%"=="%FolderName%" ( - call set "_FolNamLong=%%FolderName:~0,%FolNamLongCount%%%" - goto GetInfo-FolderName-Long -) -set /A "FolNamLongLimiter=%FolNamLongLimit%-4" -if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." - -if "%display-movieinfo%"=="yes" ( - if not exist "*.nfo" ( - echo %TAB% %g_%No ".nfo" detected.%r_% - goto Layer - ) -) else (goto Layer) -for %%N in (*.nfo) do ( - set "nfoName=%%~nxN" - for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( - if /i not "%%D"=="" ( - if /i not "%%D"=="genre" (set "%%D=%%E") else ( - set "genre=%%E" - call :GetInfo-Collect - ) - ) - ) -) -if not defined value echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% -if not defined genre echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% -set "rating=%value:~0,3%" -set "genre=__%_genre%" -set "genre=%genre:__, =%" -set "genre=%genre:Science Fiction=SciFi%" -set "GenreLimit=%genre-characters-limit%" -set /a "GenreLimit=%GenreLimit%+1" -:GetInfo-Genre -set /a GenreCount+=1 -if not "%_genre%"=="%genre%" ( - call set "_genre=%%genre:~0,%GenreCount%%%" - goto GetInfo-Genre -) -set /A "GenreLimiter=%GenreLimit%-4" -if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." -goto Layer -:GetInfo-Collect -set "_genre=%_genre%, %genre%" -exit /b - - - - -:: Proceed to edit and convert the image using ImageMagick -:Layer -:LAYER-BACKGROUND -set BACKGROUND-CODE= ( "%background-image%" ^ - -scale 512x512! ^ - -background none ^ - -extent 512x512 ^ - ) -compose Over - -:LAYER-DISC_IMAGE -if exist "*discart.png" ( - for %%D in (*discart.png) do set "discart=%%~fD" -) else set "discart=%disc-image%" -set DISC-IMAGE-CODE= ( "%discart%" ^ - -scale 300x300! ^ - -background none ^ - -extent 512x512-170-203 ^ - ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ - +swap -background none -layers merge -extent 512x512 ^ - ) -compose Over -composite - -if /i not "%display-discimage%"=="yes" set "DISC-IMAGE-CODE=" - - -:LAYER-STAR_IMAGE -if defined rating set STAR-IMAGE-CODE= ( ^ - "%star-image%" ^ - -scale 75x75! ^ - -gravity Northwest ^ - -geometry +45+434 ^ - ( +clone -background BLACK% ^ - -shadow 40x1.2+1.8+3 ) ^ - +swap -background none -layers merge -extent 512x512 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "STAR-IMAGE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "STAR-IMAGE-CODE=" - - -:LAYER-RATING_TEXT -if defined RATING set RATING-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 26 ^ - label:"%rating%" ^ - -gravity Northwest ^ - -geometry +64+463 ^ - ( +clone -background black -shadow 0x1.3+2+3.5 ) ^ - +swap -background none -layers merge -extent 512x512 ^ - ) -compose Over -composite - -if /i not "%Show-Rating%" EQU "yes" set "RATING-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "RATING-CODE=" - - -:LAYER-GENRE_TEXT -if defined GENRE set GENRE-CODE= ( ^ - -font Arial-Bold ^ - -fill BLACK ^ - -pointsize 25 ^ - -gravity Northwest ^ - -geometry +110+470 ^ - label:"%genre%" ^ - ( +clone -background ORANGE -shadow 70x1+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background YELLOW -shadow 70x1-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background ORANGE -shadow 70x1+0.6-0.6 ) +swap -background none -layers merge ^ - ) -composite - -if /i not "%Show-Genre%" EQU "yes" set "GENRE-CODE=" -if /i not "%display-movieinfo%" EQU "yes" set "GENRE-CODE=" - - -:LAYER-POSTER_SIDE -set POSTER-SIDE-CODE= ( ^ - "%inputfile%" ^ - -scale 512x512! ^ - -blur 0x19 ^ - "%foldervertical-side%" ) -compose over -composite ^ - ( "%foldervertical-sidefx%" -scale 512x512! ) -compose over -composite - - -:LAYER-LOGO_IMAGE -if exist "*Logo.png" ( - for %%D in (*Logo.png) do set "Logo=%%~fD" -) else set "Logo=" -set Logo-IMAGE-CODE= ( "%Logo%" ^ - -scale 160x50! ^ - -background none ^ - -gravity Northwest ^ - -geometry +420+60 ^ - -rotate 90 ^ - ) -compose Over -composite -if not defined Logo set "Logo-IMAGE-CODE=" -if /i not "%use-Logo-instead-folderName%"=="yes" set "Logo-IMAGE-CODE=" - -:LAYER-CLEARART_IMAGE -if exist "*clearart.png" ( - for %%D in (*clearart.png) do set "clearart=%%~fD" -) else set "clearart=" -set CLEARART-IMAGE-CODE= ( "%clearart%" ^ - -scale 380x ^ - -background none ^ - -gravity SouthWest ^ - -geometry -250-320 ^ - ( +clone -background BLACK -shadow 40x40+10+10 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 40x40-10-10 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 40x40-10+10 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 40x40+10-10 ) +swap -background none -layers merge ^ - ) -compose Over -composite -if not defined clearart set "CLEARART-IMAGE-CODE=" -if /i not "%show-clearArt%"=="yes" set "CLEARART-IMAGE-CODE=" - -:LAYER-FOLDER_NAME -set FOLDER-NAME-SHORT-CODE= ^ - ( ^ - -font Arial-Bold ^ - -fill white ^ - -density 400 ^ - -pointsize 5 ^ - -gravity Northwest ^ - -geometry +398+30 ^ - label:"%FolNamShort%" ^ - ( +clone -background BLACK -shadow 10x5+0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.6-0.6 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.6+0.6 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5+0.6-0.6 ) +swap -background none -layers merge ^ - -rotate 90 ) -composite - -set FOLDER-NAME-LONG-CODE= ^ - ( ^ - -font Arial-Bold ^ - -fill white ^ - -density 400 ^ - -pointsize 3 ^ - -kerning 2 ^ - -gravity Northwest ^ - -geometry +376+5 ^ - label:"%FolNamLong%" ^ - ( +clone -background BLACK -shadow 10x5+0.2+0.2 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.2-0.2 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5-0.2+0.2 ) +swap -background none -layers merge ^ - ( +clone -background BLACK -shadow 10x5+0.2-0.2 ) +swap -background none -layers merge ^ - -rotate 90 ) -composite -if %FolNamShortCount% LEQ %FolNamShortLimit% set "FOLDER-NAME-LONG-CODE=" -if defined Logo-IMAGE-CODE set "FOLDER-NAME-LONG-CODE=" &set "FOLDER-NAME-SHORT-CODE=" - -:LAYER-SIDE-POSTER-SHADOW -set POSTER-SIDE-SHADOW-CODE= ( "%foldervertical-sideshadow%" -scale 512x512! ) -compose over -composite - -:LAYER-POSTER-MAIN -set POSTER-MAIN-CODE= ( ^ - "%inputfile%" ^ - -scale 346x490! ^ - -gravity Northwest ^ - -geometry +70+14 ^ - "%foldervertical-main%" ) -compose over -composite ^ - ( "%foldervertical-mainfx%" -scale 512x512! ) -compose over -composite - - - - -:: Template Command -::=================================== -:EXECUTE-TEMPLATE - "%Converter%" ^ - %BACKGROUND-CODE% ^ - %POSTER-SIDE-CODE% ^ - %FOLDER-NAME-SHORT-CODE% ^ - %FOLDER-NAME-LONG-CODE% ^ - %Logo-IMAGE-CODE% ^ - %DISC-IMAGE-CODE% ^ - %POSTER-SIDE-SHADOW-CODE% ^ - %POSTER-MAIN-CODE% ^ - %CLEARART-IMAGE-CODE% ^ - %STAR-IMAGE-CODE% ^ - %RATING-CODE% ^ - %GENRE-CODE% ^ - -scale 256x256! ^ - "%outputfile%" -endlocal \ No newline at end of file diff --git a/template/(Shadow Only).bat b/templates/(Shadow Only).bat similarity index 84% rename from template/(Shadow Only).bat rename to templates/(Shadow Only).bat index b6287d6..a217ccd 100644 --- a/template/(Shadow Only).bat +++ b/templates/(Shadow Only).bat @@ -17,15 +17,12 @@ set "image-position=CENTER" :: |----------------------------------| set "shadow-color=BLACK" -set "shadow-opacity=80" -set "shadow-blur=1" -set "shadow-x-position=+5" -set "shadow-y-position=+6.5" +set "shadow-opacity=60" +set "shadow-blur=5" +set "shadow-X-position=+5" +set "shadow-Y-position=+6.5" :: Template Command ::=================================== -"%Converter%" "%inputfile%" -resize 490x490 ^( +clone -background %shadow-color% -shadow %shadow-opacity%x%shadow-blur%%shadow-x-position%%shadow-y-position% ^) +swap -background none -layers merge -gravity %image-position% -extent 512x512 -define icon:auto-resize="%TemplateIconSize%" "%outputfile%" - - - +"%Converter%" "%inputfile%" -resize 490x490 ^( +clone -background %shadow-color% -shadow %shadow-opacity%x%shadow-blur%%shadow-x-position%%shadow-y-position% ^) +swap -background none -layers merge -gravity %image-position% -extent 512x512 -define icon:auto-resize="%TemplateIconSize%" "%outputfile%" \ No newline at end of file diff --git a/template/(none).bat b/templates/(none).bat similarity index 100% rename from template/(none).bat rename to templates/(none).bat diff --git a/templates/BeOrigin.bat b/templates/BeOrigin.bat new file mode 100644 index 0000000..003f502 --- /dev/null +++ b/templates/BeOrigin.bat @@ -0,0 +1,336 @@ +:: Template-Version=v1.0 + +:: Template Info +::======================================================== +::` Template style by Jonathan Brimer +::` https://beoriginal.com/blog/free-folder-icon-photoshop-template +::` ------------------------------------------------------ + + +:: Template Config +::======================================================== +::--------- Label -------------------------- +set "display-FolderName=yes" +set "FolderNameShort-characters-limit=11" +set "FolderNameShort-font=Arial-Bold" +set "FolderNameLong-characters-limit=38" +set "FolderNameLong-font=Arial" +set "FolderName-Center=Auto" + + +::--------- Movie Info --------------------- +set "display-movieinfo=yes" +set "show-Rating=yes" +set "show-Genre=yes" +set "genre-characters-limit=31" + +::--------- Additional Art ----------------- +set "use-Logo-instead-FolderName=yes" +set "display-clearArt=yes" + +::--------- Additional Config -------------- +set "Picture-Opacity=100%" +set "Background-Brightness=-5" +set "Background-Exposure=80" +set "Background-Contrast=27" +set "Background-Saturation=150" +set "Background-Blur=200" +set "Background-AmbientColor=2" +::======================================================== + + +:: Images Source +::======================================================== +set "BeOriginal-Back=%rcfi%\images\BeOriginal-Back.png" +set "BeOriginal-BackFx=%rcfi%\images\BeOriginal-BackFx.png" +set "BeOriginal-Front=%rcfi%\images\BeOriginal-Front.png" +set "BeOriginal-FrontFx=%rcfi%\images\BeOriginal-FrontFx.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" +::======================================================== + + +setlocal +call :LAYER-BASE +call :LAYER-RATING +call :LAYER-GENRE +call :LAYER-LOGO +call :LAYER-CLEARART +call :LAYER-FOLDER_NAME + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-BACK% ^ + %CODE-FOLDER-NAME-SHORT% ^ + %CODE-FOLDER-NAME-LONG% ^ + %CODE-LOGO-IMAGE% ^ + %CODE-CLEARART-IMAGE% ^ + %CODE-FRONT% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ + "%OutputFile%" +endlocal +exit /b + + + +::::::::::::::::::::::::::: CODE START ::::::::::::::::::::::::::::::::: + +:LAYER-BASE +set CODE-BACKGROUND= ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over + +set /a "PicOp=255*%Picture-Opacity%/100" +set "Picture-Opacity=-alpha set -channel A -evaluate set %PicOp% +channel" + +set CODE-FRONT= ( ^ + "%inputfile%" ^ + -scale 480x318! ^ + -gravity Northwest ^ + -geometry +18+124 ^ + %Picture-Opacity% "%BeOriginal-Front%" ) -compose over -composite ^ + ( "%BeOriginal-FrontFx%" -scale 512x512! ) -compose over -composite + +if /i "%Background-AmbientColor%"=="0" set CODE-BACK= ( "%inputfile%" -scale 512x512! ) -compose over -composite + +if /i not "%Background-AmbientColor%"=="0" set CODE-BACK= ( ^ + "%inputfile%" ^ + -modulate 100x%Background-Saturation% ^ + -modulate %Background-Exposure%x100 ^ + -brightness-contrast 0x5 ^ + -modulate 100x130 ^ + -resize %Background-AmbientColor%x%Background-AmbientColor%! ^ + -resize 1000x1000! ^ + -scale 512x512! ^ + -gravity Center ^ + -blur 0x%Background-Blur% ^ + -brightness-contrast %Background-Brightness%x0 ^ + -brightness-contrast 0x%Background-Contrast% ^ + -blur 0x20 ^ + "%BeOriginal-Back%" ) -compose over -composite ^ + ( "%BeOriginal-BackFx%" -scale 512x512! ) -compose over -composite + +set CODE-ICON-SIZE=-define icon:auto-resize="%TemplateIconSize%" +exit /b + +:LAYER-RATING +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Rating%" EQU "yes" exit /b +call :GetInfo-nfo_file + +set CODE-STAR-IMAGE= ( ^ + "%star-image%" ^ + -scale 88x88! ^ + -gravity Northwest ^ + -geometry +0+356 ^ + ( +clone -background BLACK% ^ + -shadow 40x1.2+1.8+3 ) ^ + +swap -background none -layers merge -extent 512x512 ^ + ) -compose Over -composite +if not defined rating exit /b + +set CODE-RATING= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill rgba(0,0,0,0.9) ^ + -density 400 ^ + -pointsize 6 ^ + -kerning 0 ^ + label:"%rating%" ^ + -gravity Northwest ^ + -geometry +13+383 ^ + ( +clone -background ORANGE -shadow 30x1.2+2+2 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 30x1.2-2-2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2-2+2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2+2-2 ) +swap -background none -layers merge ^ + ) -compose Over -composite +exit /b + +:LAYER-GENRE +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Genre%" EQU "yes" exit /b +if not defined genre exit /b + +set CODE-GENRE= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill BLACK ^ + -density 400 ^ + -pointsize 5 ^ + -kerning 0 ^ + -gravity Northwest ^ + -geometry +79+400 ^ + label:"%genre%" ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 70x1.2-2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2-2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 0x0.2+4+5 ) +swap -background none -layers merge ^ + ) -composite +exit /b + +:LAYER-LOGO +if /i not "%use-Logo-instead-folderName%"=="yes" exit /b + +if exist "*logo.png" ( + for %%D in (*logo.png) do set "Logo=%%~fD"&set "LogoName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Logo :%LogoName%%ESC% + +set CODE-LOGO-IMAGE= ( "%Logo%" ^ + -trim +repage ^ + -scale 145x45^ ^ + -background none ^ + -gravity center ^ + -geometry -155-157 ^ + ) -compose Over -composite +exit /b + +:LAYER-CLEARART +if /i not "%display-clearArt%"=="yes" exit /b + +if exist "*clearart.png" ( + for %%D in (*clearart.png) do set "ClearArt=%%~fD"&set "ClearArtName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Clear Art :%ClearArtName%%ESC% + +set CODE-CLEARART-IMAGE= ( "%clearart%" ^ + -trim +repage ^ + -scale 295x123^ ^ + -background none ^ + -gravity South ^ + -geometry +90+383 ^ + ) -compose Over -composite +exit /b + + +:LAYER-FOLDER_NAME +if /i not "%display-FolderName%"=="yes" exit /b +if defined CODE-LOGO-IMAGE exit /b + +for %%F in ("%cd%") do set "foldername=%%~nxF" +set "FolNamShort=%foldername%" +set "FolNamShortLimit=%FolderNameShort-characters-limit%" +set /a "FolNamShortLimit=%FolNamShortLimit%+1" +set "FolNamLong=%foldername%" +set "FolNamLongLimit=%FolderNameLong-characters-limit%" +set /a "FolNamLongLimit=%FolNamLongLimit%+1" + +:GetInfo-FolderName-Short +set /a FolNamShortCount+=1 +if not "%_FolNamShort%"=="%FolderName%" ( + call set "_FolNamShort=%%FolderName:~0,%FolNamShortCount%%%" + goto GetInfo-FolderName-Short +) +set /A "FolNamShortLimiter=%FolNamShortLimit%-4" +if %FolNamShortCount% GTR %FolNamShortLimit% call set "FolNamShort=%%FolderName:~0,%FolNamShortLimiter%%%..." + + +set "FolNamCenter=-gravity center -geometry -155-165" +set "FolNamLeft=-gravity Northwest -geometry -5+35" +if %FolNamShortCount% LEQ %FolNamShortLimiter% (set "FolNamPos=%FolNamLeft%") else (set "FolNamPos=%FolNamCenter%") +if /i "%FolderName-Center%"=="yes" set "FolNamPos=%FolNamCenter%" +if /i "%FolderName-Center%"=="no" set "FolNamPos=%FolNamLeft%" + +:GetInfo-FolderName-Long +set /a FolNamLongCount+=1 +if not "%_FolNamLong%"=="%FolderName%" ( + call set "_FolNamLong=%%FolderName:~0,%FolNamLongCount%%%" + goto GetInfo-FolderName-Long +) +set /A "FolNamLongLimiter=%FolNamLongLimit%-4" +if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." + +set CODE-FOLDER-NAME-SHORT= ^ + ( ^ + -font "%FolderNameShort-font%" ^ + -fill rgba(255,255,255,0.9) ^ + -density 400 ^ + -pointsize 4.5 ^ + %FolNamPos% ^ + -background none ^ + label:"%FolNamShort%" ^ + ( +clone -background BLACK -shadow 10x5+0.6+0.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 10x5-0.6-0.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 10x5-0.6+0.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 10x5+0.6-0.6 ) +swap -background none -layers merge ^ + ) -composite + +if %FolNamShortCount% LEQ %FolNamShortLimit% exit /b + +set CODE-FOLDER-NAME-LONG= ^ + ( ^ + -font "%FolderNameLong-font%" ^ + -fill rgba(255,255,255,0.9) ^ + -density 400 ^ + -pointsize 2.5 ^ + -kerning 2 ^ + -gravity Northwest ^ + -geometry +1+68 ^ + label:"%FolNamLong%" ^ + ( +clone -background BLACK -shadow 10x5+0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 10x5-0.2-0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 10x5-0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 10x5+0.2-0.2 ) +swap -background none -layers merge ^ + ) -composite + +if "%FolderNameLong-characters-limit%"=="0" set "CODE-FOLDER-NAME-LONG=" +exit /b + + +:GetInfo-nfo_file +if not exist "*.nfo" ( + rem echo %TAB% %g_%No ".nfo" detected.%r_% + exit /b +) + +for %%N in (*.nfo) do ( + set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% + for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( + if /i not "%%D"=="" ( + if /i not "%%D"=="genre" (set "%%D=%%E") else ( + set "genre=%%E" + call :GetInfo-Collect + ) + ) + ) +) + +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" +if defined value ( + set "rating=%value:~0,3%" +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" + +if not defined genre ( + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + exit /b +) +set "genre=__%_genre%" +set "genre=%genre:__, =%" +set "genre=%genre:Science Fiction=SciFi%" +set "GenreLimit=%genre-characters-limit%" +set /a "GenreLimit=%GenreLimit%+1" + +:GetInfo-Genre +set /a GenreCount+=1 +if not "%_genre%"=="%genre%" ( + call set "_genre=%%genre:~0,%GenreCount%%%" + goto GetInfo-Genre +) +set /A "GenreLimiter=%GenreLimit%-4" +if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." +exit /b + +:GetInfo-Collect +set "_genre=%_genre%, %genre%" +exit /b + +::::::::::::::::::::::::::: CODE END :::::::::::::::::::::::::::::::::: \ No newline at end of file diff --git a/template/DVDBox - Dark.bat b/templates/DVDBox Dark.bat similarity index 73% rename from template/DVDBox - Dark.bat rename to templates/DVDBox Dark.bat index cd84409..7b803f6 100644 --- a/template/DVDBox - Dark.bat +++ b/templates/DVDBox Dark.bat @@ -1,10 +1,14 @@ :: Template-Version=v1.1 +:: 2023-09-13 Adding error handling for: when no DiscArt found. +:: 2023-12-16 Adding a feature to generate "DiscArt." +:: 2023-12-21 Adding a feature to search for an image to use as "DiscArt." +:: 2024-05-25 Adding error handling for: when the .nfo file doesn't contain a rating value. :: Template Info ::======================================================== ::` Image template by em1l (www.deviantart.com/em1l) -::` Convert and edit using ImageMagick. -::` ---------------------------------------------------------------- +::` Convert and edit using ImageMagick. +::` ----------------------------------------------------------------- :: Template Config @@ -12,21 +16,21 @@ set "display-DiscImage=yes" set "DiscArt-search=*discart.png" set "generate-DiscArt=yes" -set "generate-DiscArt-search=*landscape.jpg, *fanart.jpg" +set "generate-DiscArt-search=*poster*.jpg, *landscape*.jpg, *fanart*.jpg" -set "display-MovieInfo=no" +set "display-MovieInfo=yes" set "show-Rating=yes" set "show-Genre=yes" -set "genre-characters-limit=32" +set "genre-characters-limit=31" ::======================================================== :: Images Source ::======================================================== -set "frame-image=%rcfi%\images\dvdbox-dark.png" +set "frame-image=%rcfi%\images\dvdbox-dark3.png" set "star-image=%rcfi%\images\star.png" set "disc-image=%rcfi%\images\disc-vinyl.png" -set "background-image=%rcfi%\images\- background.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== setlocal @@ -34,35 +38,36 @@ call :LAYER-BASE call :LAYER-DISC call :LAYER-RATING call :LAYER-GENRE - "%Converter%" ^ - %CODE-BACKGROUND% ^ - %CODE-DISC-IMAGE% ^ - %CODE-POSTER-IMAGE% ^ - %CODE-FRAME-IMAGE% ^ - %CODE-STAR-IMAGE% ^ - %CODE-RATING% ^ - %CODE-GENRE% ^ - %CODE-ICON-SIZE% ^ - "%outputfile%" + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-DISC-IMAGE% ^ + %CODE-POSTER-IMAGE% ^ + %CODE-FRAME-IMAGE% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ + "%OutputFile%" %deltempfile% endlocal exit /b + ::::::::::::::::::::::::::: CODE START :::::::::::::::::::::::::::::::: :LAYER-BASE -set CODE-BACKGROUND= ( "%background-image%" ^ +set CODE-BACKGROUND= ( "%canvas%" ^ -scale 512x512! ^ -background none ^ -extent 512x512 ^ - ) -compose Over + ) -compose Over set CODE-POSTER-IMAGE= ( "%inputfile%" ^ - -scale 348x486! ^ + -scale 340x483! ^ -background none ^ -gravity Northwest ^ - -geometry +14+10 ^ + -geometry +7+11 ^ ) -compose Over -composite set CODE-FRAME-IMAGE= ( "%frame-image%" ^ @@ -72,8 +77,11 @@ set CODE-FRAME-IMAGE= ( "%frame-image%" ^ set CODE-ICON-SIZE=-define icon:auto-resize="%TemplateIconSize%" exit /b + + :LAYER-DISC if /i not "%display-discimage%"=="yes" exit /b +if "%generate-DiscArt-search%"=="" set generate-DiscArt-search="%inputfile%" if exist "%discart-search%" ( for %%D in (%discart-search%) do ( @@ -99,14 +107,14 @@ if exist "%discart-search%" ( set CODE-DISC-IMAGE= ( "%discart%" ^ -scale 340x340! ^ -background none ^ - -extent 512x512-160-84 ^ + -extent 512x512-164-84 ^ ( +clone -background BLACK -shadow 100x1.3+2+2 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite exit /b :Generate_DiscArt-call -call "%RCFI%\template\DiscArt.bat" +if not exist "%RCFI%\templates\DiscArt.bat" (echo %TAB%%R_% DiscArt Template not found.) else call "%RCFI%\templates\DiscArt.bat" goto Generate_DiscArt-done :LAYER-RATING @@ -118,7 +126,7 @@ if not defined rating exit /b set CODE-STAR-IMAGE= ( ^ "%star-image%" ^ -scale 88x88! ^ - -extent 512x512-0-416 ^ + -extent 512x512-0-410 ^ ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite @@ -130,15 +138,15 @@ set CODE-RATING= ( ^ -pointsize 6 ^ label:"%rating%" ^ -gravity Northwest ^ - -geometry +13+443 ^ + -geometry +13+435 ^ ( +clone -background ORANGE -shadow 30x1.2+2+2 ) +swap -background none -layers merge ^ ( +clone -background YELLOW -shadow 30x1.2-2-2 ) +swap -background none -layers merge ^ ( +clone -background ORANGE -shadow 30x1.2-2+2 ) +swap -background none -layers merge ^ ( +clone -background ORANGE -shadow 30x1.2+2-2 ) +swap -background none -layers merge ^ ) -compose Over -composite - -exit /b - + +exit /b + :LAYER-GENRE if /i not "%display-movieinfo%" EQU "yes" exit /b if /i not "%Show-Genre%" EQU "yes" exit /b @@ -150,7 +158,7 @@ set CODE-GENRE= ( ^ -density 400 ^ -pointsize 5 ^ -gravity NorthWest ^ - -geometry +74+460 ^ + -geometry +74+452 ^ label:"%genre%" ^ ( +clone -background ORANGE -shadow 70x1.2+2.7+2.7 ) +swap -background none -layers merge ^ ( +clone -background YELLOW -shadow 70x1.2-2.7-2.7 ) +swap -background none -layers merge ^ @@ -160,6 +168,7 @@ set CODE-GENRE= ( ^ ) -composite exit /b + :GetInfo-nfo_file if not exist "*.nfo" ( rem echo %TAB% %g_%No ".nfo" detected.%r_% @@ -179,12 +188,16 @@ for %%N in (*.nfo) do ( ) ) +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" if defined value ( set "rating=%value:~0,3%" -) else echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" set "rating=" +if "%rating%"=="10." set "rating=10" if not defined genre ( - echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% exit /b ) set "genre=__%_genre%" diff --git a/template/DVDBox - Light.bat b/templates/DVDBox Light.bat similarity index 77% rename from template/DVDBox - Light.bat rename to templates/DVDBox Light.bat index db4c748..3822e1b 100644 --- a/template/DVDBox - Light.bat +++ b/templates/DVDBox Light.bat @@ -1,4 +1,9 @@ :: Template-Version=v1.1 +:: 2023-09-13 Adding error handling for: when no DiscArt found. +:: 2023-12-16 Adding a feature to generate "DiscArt." +:: 2023-12-21 Adding a feature to search for an image to use as "DiscArt." +:: 2024-05-25 Adding error handling for: when the .nfo file doesn't contain a rating value. + :: Template Info ::======================================================== @@ -12,12 +17,12 @@ set "display-DiscImage=yes" set "DiscArt-search=*discart.png" set "generate-DiscArt=yes" -set "generate-DiscArt-search=*landscape.jpg, *fanart.jpg" +set "generate-DiscArt-search=*poster*.jpg, *landscape*.jpg, *fanart*.jpg" -set "display-MovieInfo=no" +set "display-MovieInfo=yes" set "show-Rating=yes" set "show-Genre=yes" -set "genre-characters-limit=32" +set "genre-characters-limit=31" ::======================================================== @@ -26,7 +31,7 @@ set "genre-characters-limit=32" set "frame-image=%rcfi%\images\dvdbox-light.png" set "star-image=%rcfi%\images\star.png" set "disc-image=%rcfi%\images\disc-vinyl.png" -set "background-image=%rcfi%\images\- background.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== setlocal @@ -34,15 +39,15 @@ call :LAYER-BASE call :LAYER-DISC call :LAYER-RATING call :LAYER-GENRE - "%Converter%" ^ - %CODE-BACKGROUND% ^ - %CODE-DISC-IMAGE% ^ - %CODE-POSTER-IMAGE% ^ - %CODE-FRAME-IMAGE% ^ - %CODE-STAR-IMAGE% ^ - %CODE-RATING% ^ - %CODE-GENRE% ^ - %CODE-ICON-SIZE% ^ + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-DISC-IMAGE% ^ + %CODE-POSTER-IMAGE% ^ + %CODE-FRAME-IMAGE% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ "%OutputFile%" %deltempfile% endlocal @@ -53,17 +58,17 @@ exit /b ::::::::::::::::::::::::::: CODE START :::::::::::::::::::::::::::::::: :LAYER-BASE -set CODE-BACKGROUND= ( "%background-image%" ^ +set CODE-BACKGROUND= ( "%canvas%" ^ -scale 512x512! ^ -background none ^ -extent 512x512 ^ ) -compose Over set CODE-POSTER-IMAGE= ( "%inputfile%" ^ - -scale 340x484! ^ + -scale 340x483! ^ -background none ^ -gravity Northwest ^ - -geometry +6+10 ^ + -geometry +7+11 ^ ) -compose Over -composite set CODE-FRAME-IMAGE= ( "%frame-image%" ^ @@ -77,6 +82,7 @@ exit /b :LAYER-DISC if /i not "%display-discimage%"=="yes" exit /b +if "%generate-DiscArt-search%"=="" set generate-DiscArt-search="%inputfile%" if exist "%discart-search%" ( for %%D in (%discart-search%) do ( @@ -109,14 +115,13 @@ set CODE-DISC-IMAGE= ( "%discart%" ^ exit /b :Generate_DiscArt-call -call "%RCFI%\template\DiscArt.bat" +if not exist "%RCFI%\templates\DiscArt.bat" (echo %TAB%%R_% DiscArt Template not found.) else call "%RCFI%\templates\DiscArt.bat" goto Generate_DiscArt-done :LAYER-RATING if /i not "%display-movieinfo%" EQU "yes" exit /b call :GetInfo-nfo_file if /i not "%Show-Rating%" EQU "yes" exit /b -if not defined rating exit /b set CODE-STAR-IMAGE= ( ^ "%star-image%" ^ @@ -125,6 +130,7 @@ set CODE-STAR-IMAGE= ( ^ ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite +if not defined rating exit /b set CODE-RATING= ( ^ -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ @@ -183,12 +189,16 @@ for %%N in (*.nfo) do ( ) ) +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" if defined value ( set "rating=%value:~0,3%" -) else echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" set "rating=" +if "%rating%"=="10." set "rating=10" if not defined genre ( - echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% exit /b ) set "genre=__%_genre%" diff --git a/template/DVDCase - Bluray.bat b/templates/DVDCase Bluray.bat similarity index 78% rename from template/DVDCase - Bluray.bat rename to templates/DVDCase Bluray.bat index b372913..17a4e64 100644 --- a/template/DVDCase - Bluray.bat +++ b/templates/DVDCase Bluray.bat @@ -1,4 +1,5 @@ -:: Template-Version=v1.0 +:: Template-Version=v1.1 +:: 2024-05-25 Adding error handling for: when the .nfo file doesn't contain a rating value. :: Template Info ::======================================================== @@ -12,30 +13,30 @@ set "display-movieinfo=yes" set "show-Rating=yes" set "show-Genre=yes" -set "genre-characters-limit=25" +set "genre-characters-limit=24" ::======================================================== :: Images Source ::======================================================== -set "frame-image=%rcfi%\img\dvdcase-bluray.png" -set "star-image=%rcfi%\img\star.png" -set "background-image=%rcfi%\img\- background.png" +set "frame-image=%rcfi%\images\dvdcase-bluray.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== setlocal call :LAYER-BASE call :LAYER-RATING call :LAYER-GENRE - "%Converter%" ^ - %CODE-BACKGROUND% ^ + "%Converter%" ^ + %CODE-BACKGROUND% ^ %CODE-POSTER-IMAGE% ^ - %CODE-FRAME-IMAGE% ^ - %CODE-THE-SHADOW% ^ - %CODE-STAR-IMAGE% ^ - %CODE-RATING% ^ - %CODE-GENRE% ^ - %CODE-ICON-SIZE% ^ + %CODE-FRAME-IMAGE% ^ + %CODE-THE-SHADOW% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ "%OutputFile%" endlocal exit /b @@ -46,7 +47,7 @@ exit /b :LAYER-BASE :: Get background image -set CODE-BACKGROUND= ( "%background-image%" ^ +set CODE-BACKGROUND= ( "%canvas%" ^ -scale 512x512! ^ -background none ^ -extent 512x512 ^ @@ -71,7 +72,6 @@ exit /b if /i not "%display-movieinfo%" EQU "yes" exit /b call :GetInfo-nfo_file if /i not "%Show-Rating%" EQU "yes" exit /b -if not defined rating exit /b set CODE-STAR-IMAGE= ( ^ "%star-image%" ^ @@ -81,7 +81,8 @@ set CODE-STAR-IMAGE= ( ^ ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite - + if not defined rating exit /b + set CODE-RATING= ( ^ -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ -fill rgba(0,0,0,0.9) ^ @@ -126,6 +127,7 @@ if not exist "*.nfo" ( for %%N in (*.nfo) do ( set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( if /i not "%%D"=="" ( if /i not "%%D"=="genre" (set "%%D=%%E") else ( @@ -136,12 +138,16 @@ for %%N in (*.nfo) do ( ) ) +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" if defined value ( set "rating=%value:~0,3%" -) else echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" if not defined genre ( - echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% exit /b ) set "genre=__%_genre%" diff --git a/template/DVDCase - Transparent Plastic.bat b/templates/DVDCase Transparent Plastic.bat similarity index 76% rename from template/DVDCase - Transparent Plastic.bat rename to templates/DVDCase Transparent Plastic.bat index 09243d8..9b211b9 100644 --- a/template/DVDCase - Transparent Plastic.bat +++ b/templates/DVDCase Transparent Plastic.bat @@ -1,4 +1,5 @@ -:: Template-Version=v1.0 +:: Template-Version=v1.1 +:: 2024-05-25 Adding error handling for: when the .nfo file doesn't contain a rating value. :: Template Info ::======================================================== @@ -18,24 +19,24 @@ set "genre-characters-limit=26" :: Images Source ::======================================================== -set "frame-image=%rcfi%\img\dvdcase-plastic.png" -set "frame-image-mask=%rcfi%\img\dvdcase-plastic-mask.png" -set "star-image=%rcfi%\img\star.png" -set "background-image=%rcfi%\img\- background.png" +set "frame-image=%rcfi%\images\dvdcase-plastic.png" +set "frame-image-mask=%rcfi%\images\dvdcase-plastic-mask.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== setlocal call :LAYER-BASE call :LAYER-RATING call :LAYER-GENRE - "%Converter%" ^ - %CODE-BACKGROUND% ^ + "%Converter%" ^ + %CODE-BACKGROUND% ^ %CODE-POSTER-IMAGE% ^ - %CODE-FRAME-IMAGE% ^ - %CODE-STAR-IMAGE% ^ - %CODE-RATING% ^ - %CODE-GENRE% ^ - %CODE-ICON-SIZE% ^ + %CODE-FRAME-IMAGE% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ "%OutputFile%" endlocal @@ -44,7 +45,7 @@ endlocal ::::::::::::::::::::::::::: CODE START :::::::::::::::::::::::::::::::: :LAYER-BASE -set CODE-BACKGROUND= ( "%background-image%" ^ +set CODE-BACKGROUND= ( "%canvas%" ^ -scale 512x512! ^ -background none ^ -extent 512x512 ^ @@ -68,7 +69,6 @@ exit /b if /i not "%display-movieinfo%" EQU "yes" exit /b call :GetInfo-nfo_file if /i not "%Show-Rating%" EQU "yes" exit /b -if not defined rating exit /b set CODE-STAR-IMAGE= ( ^ "%star-image%" ^ @@ -78,6 +78,7 @@ set CODE-STAR-IMAGE= ( ^ ( +clone -background BLACK -shadow 40x1.2+1.8+3 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite + if not defined rating exit /b set CODE-RATING= ( ^ -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ @@ -125,6 +126,7 @@ if not exist "*.nfo" ( for %%N in (*.nfo) do ( set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( if /i not "%%D"=="" ( if /i not "%%D"=="genre" (set "%%D=%%E") else ( @@ -135,12 +137,16 @@ for %%N in (*.nfo) do ( ) ) +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" if defined value ( set "rating=%value:~0,3%" -) else echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" if not defined genre ( - echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% exit /b ) set "genre=__%_genre%" @@ -163,4 +169,4 @@ exit /b set "_genre=%_genre%, %genre%" exit /b -::::::::::::::::::::::::::: CODE START :::::::::::::::::::::::::::::::: \ No newline at end of file +::::::::::::::::::::::::::: CODE END :::::::::::::::::::::::::::::::::: diff --git a/template/DiscArt.bat b/templates/DiscArt.bat similarity index 84% rename from template/DiscArt.bat rename to templates/DiscArt.bat index f661dba..215df53 100644 --- a/template/DiscArt.bat +++ b/templates/DiscArt.bat @@ -1,7 +1,7 @@ :: Template Info ::======================================================== ::` This template will also be used to automatically -::` generate DiscArt for "DVDCase" templates. +::` generate DiscArt for "DVD Box" templates. ::` ------------------------------------------------------ @@ -20,14 +20,14 @@ set "discArt-border=%RCFI%\images\DiscArt-Border.png" set "discArt-transparent=%RCFI%\images\DiscArt-Transparent.png" set "discArt-label=%RCFI%\images\DiscArt-Label.png" set "discArt-logo=%RCFI%\images\DiscArt-Logo.png" -set "background-image=%rcfi%\images\- background.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== :: Code ::======================================================== -if /i not "%display-label%"=="yes" set "discArt-label=%background-image%" -if /i not "%display-logo%"=="yes" set "discArt-logo=%background-image%" +if /i not "%display-label%"=="yes" set "discArt-label=%canvas%" +if /i not "%display-logo%"=="yes" set "discArt-logo=%canvas%" if /i "%Template%"=="%~f0" if /i "%Context%"=="IMG.Generate.PNG" for %%D in ("%OutputFile%") do set "DiscArtName=%%~dpnD"&Call :DiscArt-Add_Suffix if /i "%referrer%"=="DVDcase" ( set "inDiscArt=%gen_disc%" @@ -36,7 +36,7 @@ if /i "%referrer%"=="DVDcase" ( set deltempfile=del "%cd%\DiscArt(%FI-ID%).png" ) else set "outDiscArt=%OutputFile%"&set "inDiscArt=%inputfile%" "%Converter%" ^ - ( "%background-image%" -scale 512x512! -background none -extent 512x512 ) -compose Over ^ + ( "%canvas%" -scale 512x512! -background none -extent 512x512 ) -compose Over ^ ( "%inDiscArt%" -scale 485x485! -gravity center "%discArt-main%" ) -compose over -composite ^ ( "%discArt-transparent%" -scale 512x512! ) -compose over -composite ^ ( "%discArt-label%" -scale 512x512! ) -compose over -composite ^ diff --git a/template/Folder Horizontal.bat b/templates/Folder Horizontal.bat similarity index 74% rename from template/Folder Horizontal.bat rename to templates/Folder Horizontal.bat index fc28f5f..aa79cf1 100644 --- a/template/Folder Horizontal.bat +++ b/templates/Folder Horizontal.bat @@ -1,4 +1,7 @@ -:: Template-Version=v1.0 +:: Template-Version=v1.1 +:: 2024-05-25 Adding error handling for: when the .nfo file doesn't contain a rating value. +:: 2024-05-26 Adding function to trim transparent pixel from the logo and ClearArt image. +:: 2024-05-27 Changging Logo and ClearArt image size to keep aspect ratio. :: Template Info ::======================================================== @@ -11,7 +14,7 @@ ::======================================================== ::--------- Label -------------------------- set "display-FolderName=yes" -set "FolderNameShort-characters-limit=11" +set "FolderNameShort-characters-limit=10" set "FolderNameLong-characters-limit=36" set "FolderName-Center=Auto" @@ -22,20 +25,20 @@ set "show-Genre=yes" set "genre-characters-limit=32" ::--------- Additional Art ----------------- -set "use-Logo-instead-FolderName=no" +set "use-Logo-instead-FolderName=yes" set "display-clearArt=yes" ::======================================================== :: Images Source ::======================================================== -set "folderhorizontal-top=%rcfi%\img\folderhorizontal-top.png" -set "folderhorizontal-topfx=%rcfi%\img\folderhorizontal-topfx.png" -set "folderhorizontal-topshadow=%rcfi%\img\folderhorizontal-topshadow.png" -set "folderhorizontal-main=%rcfi%\img\folderhorizontal-main.png" -set "folderhorizontal-mainfx=%rcfi%\img\folderhorizontal-mainfx.png" -set "star-image=%rcfi%\img\star.png" -set "background-image=%rcfi%\img\- background.png" +set "folderhorizontal-top=%rcfi%\images\folderhorizontal-top.png" +set "folderhorizontal-topfx=%rcfi%\images\folderhorizontal-topfx.png" +set "folderhorizontal-topshadow=%rcfi%\images\folderhorizontal-topshadow.png" +set "folderhorizontal-main=%rcfi%\images\folderhorizontal-main.png" +set "folderhorizontal-mainfx=%rcfi%\images\folderhorizontal-mainfx.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== setlocal @@ -45,19 +48,20 @@ call :LAYER-GENRE call :LAYER-LOGO call :LAYER-CLEARART call :LAYER-FOLDER_NAME - "%Converter%" ^ - %CODE-BACKGROUND% ^ - %CODE-POSTER-TOP% ^ - %CODE-FOLDER-NAME-SHORT% ^ - %CODE-FOLDER-NAME-LONG% ^ - %CODE-LOGO-IMAGE% ^ - %CODE-CLEARART-IMAGE% ^ - %CODE-POSTER-TOP-SHADOW% ^ - %CODE-POSTER-MAIN% ^ - %CODE-STAR-IMAGE% ^ - %CODE-RATING% ^ - %CODE-GENRE% ^ - %CODE-ICON-SIZE% ^ + + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-POSTER-TOP% ^ + %CODE-FOLDER-NAME-SHORT% ^ + %CODE-FOLDER-NAME-LONG% ^ + %CODE-LOGO-IMAGE% ^ + %CODE-CLEARART-IMAGE% ^ + %CODE-POSTER-TOP-SHADOW% ^ + %CODE-POSTER-MAIN% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ "%OutputFile%" endlocal exit /b @@ -67,7 +71,7 @@ exit /b ::::::::::::::::::::::::::: CODE START ::::::::::::::::::::::::::::::::: :LAYER-BASE -set CODE-BACKGROUND= ( "%background-image%" ^ +set CODE-BACKGROUND= ( "%canvas%" ^ -scale 512x512! ^ -background none ^ -extent 512x512 ^ @@ -96,7 +100,6 @@ exit /b if /i not "%display-movieinfo%" EQU "yes" exit /b if /i not "%Show-Rating%" EQU "yes" exit /b call :GetInfo-nfo_file -if not defined rating exit /b set CODE-STAR-IMAGE= ( ^ "%star-image%" ^ @@ -107,6 +110,7 @@ set CODE-STAR-IMAGE= ( ^ -shadow 40x1.2+1.8+3 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite + if not defined rating exit /b set CODE-RATING= ( ^ -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ @@ -150,14 +154,17 @@ exit /b if /i not "%use-Logo-instead-folderName%"=="yes" exit /b if exist "*logo.png" ( - for %%D in (*logo.png) do set "logo=%%~fD" + for %%D in (*logo.png) do set "Logo=%%~fD"&set "LogoName=%%~nxD" ) else exit /b +echo %TAB%%ESC%%g_%Logo :%LogoName%%ESC% + set CODE-LOGO-IMAGE= ( "%Logo%" ^ - -scale 160x55! ^ + -trim +repage ^ + -scale 162x48^ ^ -background none ^ - -gravity Northwest ^ - -geometry +51+86 ^ + -gravity center ^ + -geometry -125-147 ^ ) -compose Over -composite exit /b @@ -165,10 +172,13 @@ exit /b if /i not "%display-clearArt%"=="yes" exit /b if exist "*clearart.png" ( - for %%D in (*clearart.png) do set "clearart=%%~fD" + for %%D in (*clearart.png) do set "ClearArt=%%~fD"&set "ClearArtName=%%~nxD" ) else exit /b +echo %TAB%%ESC%%g_%Clear Art :%ClearArtName%%ESC% + set CODE-CLEARART-IMAGE= ( "%clearart%" ^ + -trim +repage ^ -scale 248x ^ -background none ^ -gravity Northwest ^ @@ -182,6 +192,7 @@ if /i not "%display-FolderName%"=="yes" exit /b if defined CODE-LOGO-IMAGE exit /b for %%F in ("%cd%") do set "foldername=%%~nxF" +if not defined foldername set "foldername=%cd:\= %" set "FolNamShort=%foldername%" set "FolNamShortLimit=%FolderNameShort-characters-limit%" set /a "FolNamShortLimit=%FolNamShortLimit%+1" @@ -217,7 +228,7 @@ if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0, set CODE-FOLDER-NAME-SHORT= ^ ( ^ -font Arial-Bold ^ - -fill rgba(255,255,255,0.9) ^ + -fill rgba(255,255,255,1) ^ -density 400 ^ -pointsize 5.2 ^ %FolNamPos% ^ @@ -234,18 +245,20 @@ if %FolNamShortCount% LEQ %FolNamShortLimit% exit /b set CODE-FOLDER-NAME-LONG= ^ ( ^ -font Arial-Bold ^ - -fill rgba(255,255,255,0.9) ^ + -fill rgba(255,255,255,1) ^ -density 400 ^ - -pointsize 3.5 ^ - -kerning 2 ^ + -pointsize 3.1 ^ + -kerning 1.5 ^ -gravity Northwest ^ - -geometry -10+78 ^ + -geometry -5+79 ^ label:"%FolNamLong%" ^ ( +clone -background BLACK -shadow 10x5+0.2+0.2 ) +swap -background none -layers merge ^ ( +clone -background BLACK -shadow 10x5-0.2-0.2 ) +swap -background none -layers merge ^ ( +clone -background BLACK -shadow 10x5-0.2+0.2 ) +swap -background none -layers merge ^ ( +clone -background BLACK -shadow 10x5+0.2-0.2 ) +swap -background none -layers merge ^ ) -composite + +if "%FolderNameLong-characters-limit%"=="0" set "CODE-FOLDER-NAME-LONG=" exit /b @@ -257,6 +270,7 @@ if not exist "*.nfo" ( for %%N in (*.nfo) do ( set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( if /i not "%%D"=="" ( if /i not "%%D"=="genre" (set "%%D=%%E") else ( @@ -267,12 +281,16 @@ for %%N in (*.nfo) do ( ) ) +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" if defined value ( set "rating=%value:~0,3%" -) else echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" if not defined genre ( - echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% exit /b ) set "genre=__%_genre%" diff --git a/template/Folder Vertical.bat b/templates/Folder Vertical.bat similarity index 76% rename from template/Folder Vertical.bat rename to templates/Folder Vertical.bat index 93e2c5b..b26adb1 100644 --- a/template/Folder Vertical.bat +++ b/templates/Folder Vertical.bat @@ -1,4 +1,7 @@ -:: Template-Version=v1.0 +:: Template-Version=v1.1 +:: 27-10-2023 Adding error handling for "Convert.exe: LabelExpected @ error/annotate.c/GetMultilineTypeMetrics/797." +:: 2024-05-26 Adding function to trim transparent pixel from the logo and ClearArt image. +:: 2024-05-27 Changging Logo and ClearArt image size to keep aspect ratio. :: Template Info ::======================================================== @@ -11,7 +14,7 @@ ::======================================================== ::--------- Label -------------------------- set "display-FolderName=yes" -set "FolderNameShort-characters-limit=11" +set "FolderNameShort-characters-limit=10" set "FolderNameLong-characters-limit=40" set "FolderName-Center=Auto" @@ -22,43 +25,43 @@ set "show-Genre=yes" set "genre-characters-limit=26" ::--------- Additional Art ----------------- -set "use-Logo-instead-FolderName=no" -set "display-clearArt=no" +set "use-Logo-instead-FolderName=yes" +set "display-clearArt=yes" ::======================================================== :: Images Source ::======================================================== -set "foldervertical-side=%rcfi%\img\foldervertical-side.png" -set "foldervertical-sidefx=%rcfi%\img\foldervertical-sidefx.png" -set "foldervertical-sideshadow=%rcfi%\img\foldervertical-sideshadow.png" -set "foldervertical-main=%rcfi%\img\foldervertical-main.png" -set "foldervertical-mainfx=%rcfi%\img\foldervertical-mainfx.png" -set "star-image=%rcfi%\img\star.png" -set "background-image=%rcfi%\img\- background.png" +set "foldervertical-side=%rcfi%\images\foldervertical-side.png" +set "foldervertical-sidefx=%rcfi%\images\foldervertical-sidefx.png" +set "foldervertical-sideshadow=%rcfi%\images\foldervertical-sideshadow.png" +set "foldervertical-main=%rcfi%\images\foldervertical-main.png" +set "foldervertical-mainfx=%rcfi%\images\foldervertical-mainfx.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" ::======================================================== setlocal +chcp 65001 >nul call :LAYER-BASE call :LAYER-RATING call :LAYER-GENRE call :LAYER-LOGO call :LAYER-CLEARART call :LAYER-FOLDER_NAME -rem "%Converter%" %CODE-FOLDER-NAME-SHORT% %CODE-FOLDER-NAME-LONG% "%rcfi%\temp.foldervertical.foldername.png" - - "%Converter%" ^ - %CODE-BACKGROUND% ^ - %CODE-POSTER-SIDE% ^ - %CODE-FOLDER-NAME-SHORT% ^ - %CODE-FOLDER-NAME-LONG% ^ - %CODE-LOGO-IMAGE% ^ + + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-POSTER-SIDE% ^ + %CODE-FOLDER-NAME-SHORT% ^ + %CODE-FOLDER-NAME-LONG% ^ + %CODE-LOGO-IMAGE% ^ %CODE-POSTER-SIDE-SHADOW% ^ - %CODE-POSTER-MAIN% ^ - %CODE-CLEARART-IMAGE% ^ - %CODE-STAR-IMAGE% ^ - %CODE-RATING% ^ - %CODE-GENRE% ^ - %CODE-ICON-SIZE% ^ + %CODE-POSTER-MAIN% ^ + %CODE-CLEARART-IMAGE% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ "%OutputFile%" endlocal exit /b @@ -69,7 +72,7 @@ exit /b :LAYER-BASE set CODE-BACKGROUND= ( ^ - "%background-image%" ^ + "%canvas%" ^ -scale 512x512! ^ -background none ^ -extent 512x512 ) -compose Over @@ -97,7 +100,6 @@ exit /b if /i not "%display-movieinfo%" EQU "yes" exit /b call :GetInfo-nfo_file if /i not "%Show-Rating%" EQU "yes" exit /b -if not defined rating exit /b set CODE-STAR-IMAGE= ( ^ "%star-image%" ^ @@ -107,6 +109,7 @@ set CODE-STAR-IMAGE= ( ^ ( +clone -background BLACK -shadow 0x1.2+4+6 ) ^ +swap -background none -layers merge -extent 512x512 ^ ) -compose Over -composite + if not defined rating exit /b set CODE-RATING= ( ^ -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ @@ -150,15 +153,18 @@ exit /b :LAYER-LOGO if /i not "%use-Logo-instead-folderName%"=="yes" exit /b -if exist "*Logo.png" ( - for %%D in (*Logo.png) do set "Logo=%%~fD" +if exist "*logo.png" ( + for %%D in (*logo.png) do set "Logo=%%~fD"&set "LogoName=%%~nxD" ) else exit /b +echo %TAB%%ESC%%g_%Logo :%LogoName%%ESC% + set CODE-LOGO-IMAGE= ( "%Logo%" ^ - -scale 160x50! ^ + -trim +repage ^ + -scale 160x50^ ^ -background none ^ - -gravity Northwest ^ - -geometry +423+60 ^ + -gravity center ^ + -geometry +190-114 ^ -rotate 90 ^ ) -compose Over -composite exit /b @@ -167,10 +173,13 @@ exit /b if /i not "%display-clearArt%"=="yes" exit /b if exist "*clearart.png" ( - for %%D in (*clearart.png) do set "clearart=%%~fD" + for %%D in (*clearart.png) do set "ClearArt=%%~fD"&set "ClearArtName=%%~nxD" ) else exit /b +echo %TAB%%ESC%%g_%Clear Art :%ClearArtName%%ESC% + set CODE-CLEARART-IMAGE= ( "%clearart%" ^ + -trim +repage ^ -scale 380x ^ -background none ^ -gravity SouthWest ^ @@ -187,6 +196,7 @@ if /i "%display-FolderName%"=="no" exit /b if defined CODE-LOGO-IMAGE exit /b for %%F in ("%cd%") do set "foldername=%%~nxF" +if not defined foldername set "foldername=%cd:\= %" set "FolNamShort=%foldername%" set "FolNamShortLimit=%FolderNameShort-characters-limit%" set /a "FolNamShortLimit=%FolNamShortLimit%+1" @@ -217,8 +227,6 @@ if not "%_FolNamLong%"=="%FolderName%" ( set /A "FolNamLongLimiter=%FolNamLongLimit%-4" if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." - - set CODE-FOLDER-NAME-SHORT= ^ ( ^ -font Arial-Bold ^ @@ -253,6 +261,7 @@ set CODE-FOLDER-NAME-LONG= ^ ( +clone -background BLACK -shadow 10x5+0.2-0.2 ) +swap -background none -layers merge ^ -rotate 90 ) -composite +if "%FolderNameLong-characters-limit%"=="0" set "CODE-FOLDER-NAME-LONG=" exit /b @@ -264,6 +273,7 @@ if not exist "*.nfo" ( for %%N in (*.nfo) do ( set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( if /i not "%%D"=="" ( if /i not "%%D"=="genre" (set "%%D=%%E") else ( @@ -274,12 +284,16 @@ for %%N in (*.nfo) do ( ) ) +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" if defined value ( set "rating=%value:~0,3%" -) else echo %TAB%%r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" if not defined genre ( - echo %TAB%%r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% exit /b ) set "genre=__%_genre%" @@ -301,4 +315,5 @@ exit /b :GetInfo-Collect set "_genre=%_genre%, %genre%" exit /b + ::::::::::::::::::::::::::: CODE END :::::::::::::::::::::::::::::::::: \ No newline at end of file diff --git a/templates/Windows 11 A.bat b/templates/Windows 11 A.bat new file mode 100644 index 0000000..9e3283a --- /dev/null +++ b/templates/Windows 11 A.bat @@ -0,0 +1,381 @@ +:: Template-Version=v1.0 + +:: Template Info +::======================================================== +::` Windows 11 style folder icon. +::` ------------------------------------------------------ + + +:: Template Config +::======================================================== + +::--------- Movie Info --------------------- +set "display-movieinfo=yes" +set "show-Rating=yes" +set "show-Genre=yes" +set "genre-characters-limit=32" + +::--------- Additional Art ----------------- +set "use-Logo-instead-FolderName=yes" +set "display-clearArt=yes" + +::--------- Folder Name -------------------- +set "display-FolderName=yes" +set "FolderName-Center=Auto" + :: options: Auto = Automatically put folder name on the center if numbers + :: of the characters is less than half of characters limit + :: Yes = Always put folder name on the center + :: No = Always put folder name on the left + +set "FolderNameShort-characters-limit=8" +set "FolderNameShort-font=Microsoft-PhagsPa-Bold" +set "FolderNameShort-size=7.7" +set "FolderNameShort-Pos-Left-Direction=SouthWest" +set "FolderNameShort-Pos-Left-X=-18" +set "FolderNameShort-Pos-Left-Y=+360" +set "FolderNameShort-Pos-Center-Direction=Center" +set "FolderNameShort-Pos-Center-X=-148" +set "FolderNameShort-Pos-Center-Y=-167" + +set "FolderNameLong-characters-limit=20" +set "FolderNameLong-font=Microsoft-PhagsPa" +set "FolderNameLong-size=3.5" +set "FolderNameLong-Pos-Direction=Northwest" +set "FolderNameLong-Pos-X=-15" +set "FolderNameLong-Pos-Y=+75" + +::--------- Additional Config -------------- +set "Picture-Opacity=100%" + +set "Background-Brightness=0" +set "Background-Contrast=30" +set "Background-Exposure=110" +set "Background-Saturation=170" +set "Background-Blur=200" +set "Background-AmbientColor=2" + +set "Bevel-Brightness=25" +set "Bevel-Contrast=15" +set "Bevel-Exposure=120" +set "Bevel-Saturation=110" +::======================================================== + + +:: Images Source +::======================================================== +set "Win11-Back=%rcfi%\images\Win11A-Back.png" +set "Win11-Back-Gradient=%rcfi%\images\Win11A-Back-Gradient.png" +set "Win11-Front=%rcfi%\images\Win11A-Front.png" +set "Win11-Front-Gradient=%rcfi%\images\Win11A-Front-Gradient.png" +set "Win11-Front-Bevel=%rcfi%\images\Win11A-Front-Bevel.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" +::======================================================== + + +setlocal +call :LAYER-BASE +call :LAYER-RATING +call :LAYER-GENRE +call :LAYER-LOGO +call :LAYER-CLEARART +call :LAYER-FOLDER_NAME + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-BACK% ^ + %CODE-FOLDER-NAME-SHORT% ^ + %CODE-FOLDER-NAME-LONG% ^ + %CODE-LOGO-IMAGE% ^ + %CODE-CLEARART-IMAGE% ^ + %CODE-FRONT% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ + "%OutputFile%" +endlocal +exit /b + + + +::::::::::::::::::::::::::: CODE START ::::::::::::::::::::::::::::::::: + +:LAYER-BASE +set CODE-BACKGROUND= ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over + +set /a "PicOp=255*%Picture-Opacity%/100" +set "Picture-Opacity=-alpha set -channel A -evaluate set %PicOp% +channel" +set /a "PicOpBevel=%PicOp%+30" +set "Picture-Opacity-Bevel=-alpha set -channel A -evaluate set %PicOpBevel% +channel" + +set CODE-FRONT= ( ^ + "%inputfile%" ^ + -scale 498x320! ^ + -gravity Northwest ^ + -geometry +5+117 ^ + %Picture-Opacity% "%Win11-Front%" ) -compose over -composite ^ + ( ^ + "%inputfile%" ^ + -scale 498x320! ^ + -gravity Northwest ^ + -geometry +5+117 ^ + -modulate %Bevel-Exposure%,%Bevel-Saturation% ^ + -brightness-contrast %Bevel-Brightness%x%Bevel-Contrast% ^ + %Picture-Opacity-Bevel% "%Win11-Front-Bevel%" ) -compose over -composite ^ + ( ^ + "%inputfile%" ^ + -scale 498x320! ^ + -gravity Northwest ^ + -geometry +5+117 ^ + -brightness-contrast 10x5 ^ + %Picture-Opacity% "%Win11-Front-Gradient%" ) -compose over -composite + +if /i "%Background-AmbientColor%"=="0" set CODE-BACK= ( "%Win11-Back%" -scale 512x512! ) -compose over -composite + +if /i not "%Background-AmbientColor%"=="0" set CODE-BACK= ( ^ + "%inputfile%" ^ + -resize %Background-AmbientColor%x%Background-AmbientColor%! ^ + -resize 1000x1000! ^ + -scale 390x390! ^ + -gravity Center ^ + -modulate %Background-Exposure%,%Background-Saturation% ^ + -brightness-contrast -10x0 ^ + -blur 0x%Background-Blur% ^ + -brightness-contrast %Background-Brightness%x%Background-Contrast% ^ + -modulate 95,100 ^ + "%Win11-Back%" -scale 512x512! ) -compose over -composite ^ + ( "%inputfile%" ^ + -resize %Background-AmbientColor%x%Background-AmbientColor%! ^ + -resize 1000x1000! ^ + -scale 390x390! ^ + -gravity Center ^ + -modulate 100,%Background-Saturation% ^ + -blur 0x%Background-Blur% ^ + -brightness-contrast %Background-Brightness%x%Background-Contrast% ^ + -brightness-contrast -30x20 ^ + "%Win11-Back-Gradient%" -scale 512x512! ) -compose over -composite + +set CODE-ICON-SIZE=-define icon:auto-resize="%TemplateIconSize%" +exit /b + +:LAYER-RATING +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Rating%" EQU "yes" exit /b +call :GetInfo-nfo_file + +set CODE-STAR-IMAGE= ( ^ + "%star-image%" ^ + -scale 88x88! ^ + -gravity Northwest ^ + -geometry +0+356 ^ + ( +clone -background BLACK% ^ + -shadow 40x1.2+1.8+3 ) ^ + +swap -background none -layers merge -extent 512x512 ^ + ) -compose Over -composite +if not defined rating exit /b + +set CODE-RATING= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill rgba(0,0,0,0.9) ^ + -density 400 ^ + -pointsize 6 ^ + -kerning 0 ^ + label:"%rating%" ^ + -gravity Northwest ^ + -geometry +13+383 ^ + ( +clone -background ORANGE -shadow 30x1.2+2+2 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 30x1.2-2-2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2-2+2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2+2-2 ) +swap -background none -layers merge ^ + ) -compose Over -composite +exit /b + +:LAYER-GENRE +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Genre%" EQU "yes" exit /b +if not defined genre exit /b + +set CODE-GENRE= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill BLACK ^ + -density 400 ^ + -pointsize 5 ^ + -kerning 0 ^ + -gravity Northwest ^ + -geometry +79+400 ^ + label:"%genre%" ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 70x1.2-2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2-2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 0x0.2+4+5 ) +swap -background none -layers merge ^ + ) -composite +exit /b + +:LAYER-LOGO +if /i not "%use-Logo-instead-folderName%"=="yes" exit /b + +if exist "*logo.png" ( + for %%D in (*logo.png) do set "Logo=%%~fD"&set "LogoName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Logo :%LogoName%%ESC% + +set CODE-LOGO-IMAGE= ( "%Logo%" ^ + -trim +repage ^ + -scale 168x64^ ^ + -background none ^ + -gravity center ^ + -geometry -147-155 ^ + ) -compose Over -composite +exit /b + +:LAYER-CLEARART +if /i not "%display-clearArt%"=="yes" exit /b + +if exist "*clearart.png" ( + for %%D in (*clearart.png) do set "ClearArt=%%~fD"&set "ClearArtName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Clear Art :%ClearArtName%%ESC% + +set CODE-CLEARART-IMAGE= ( "%clearart%" ^ + -trim +repage ^ + -scale 260x117^ ^ + -background none ^ + -gravity South ^ + -geometry +90+392 ^ + ) -compose Over -composite +exit /b + + +:LAYER-FOLDER_NAME +if /i not "%display-FolderName%"=="yes" exit /b +if defined CODE-LOGO-IMAGE exit /b + +for %%F in ("%cd%") do set "foldername=%%~nxF" +set "FolNamShort=%foldername%" +set "FolNamShortLimit=%FolderNameShort-characters-limit%" +set /a "FolNamShortLimit=%FolNamShortLimit%+1" +set "FolNamLong=%foldername%" +set "FolNamLongLimit=%FolderNameLong-characters-limit%" +set /a "FolNamLongLimit=%FolNamLongLimit%+1" + +:GetInfo-FolderName-Short +set /a FolNamShortCount+=1 +if not "%_FolNamShort%"=="%FolderName%" ( + call set "_FolNamShort=%%FolderName:~0,%FolNamShortCount%%%" + goto GetInfo-FolderName-Short +) +set /A "FolNamShortLimiter=%FolNamShortLimit%-4" +if %FolNamShortCount% GTR %FolNamShortLimit% call set "FolNamShort=%%FolderName:~0,%FolNamShortLimiter%%%..." + + +set "FolNamCenter=-gravity %FolderNameShort-Pos-Center-Direction% -geometry %FolderNameShort-Pos-Center-X%%FolderNameShort-Pos-Center-Y%" +set "FolNamLeft=-gravity %FolderNameShort-Pos-Left-Direction% -geometry %FolderNameShort-Pos-Left-X%%FolderNameShort-Pos-Left-Y%" +if %FolNamShortCount% LEQ %FolNamShortLimiter% (set "FolNamPos=%FolNamLeft%") else (set "FolNamPos=%FolNamCenter%") +if /i "%FolderName-Center%"=="yes" set "FolNamPos=%FolNamCenter%" +if /i "%FolderName-Center%"=="no" set "FolNamPos=%FolNamLeft%" + +:GetInfo-FolderName-Long +set /a FolNamLongCount+=1 +if not "%_FolNamLong%"=="%FolderName%" ( + call set "_FolNamLong=%%FolderName:~0,%FolNamLongCount%%%" + goto GetInfo-FolderName-Long +) +set /A "FolNamLongLimiter=%FolNamLongLimit%-4" +if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." + +set CODE-FOLDER-NAME-SHORT= ^ + ( ^ + -font "%FolderNameShort-font%" ^ + -fill rgba(255,255,255,0.85) ^ + -density 400 ^ + -pointsize %FolderNameShort-size% ^ + %FolNamPos% ^ + -background none ^ + label:"%FolNamShort%" ^ + ( +clone -background BLACK -shadow 6x5+0.6+0.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x5-0.6-0.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x5-0.6+0.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x5+0.6-0.6 ) +swap -background none -layers merge ^ + ) -composite + +if %FolNamShortCount% LEQ %FolNamShortLimit% exit /b + +set CODE-FOLDER-NAME-LONG= ^ + ( ^ + -font "%FolderNameLong-font%" ^ + -fill rgba(255,255,255,0.9) ^ + -density 400 ^ + -pointsize %FolderNameLong-size% ^ + -kerning -0.5 ^ + -gravity %FolderNameLong-Pos-Direction% ^ + -geometry %FolderNameLong-Pos-X%%FolderNameLong-Pos-Y% ^ + label:"%FolNamLong%" ^ + ( +clone -background BLACK -shadow 3x5+0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x5-0.2-0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x5-0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x5+0.2-0.2 ) +swap -background none -layers merge ^ + ) -composite + +if "%FolderNameLong-characters-limit%"=="0" set "CODE-FOLDER-NAME-LONG=" +exit /b + + +:GetInfo-nfo_file +if not exist "*.nfo" ( + rem echo %TAB% %g_%No ".nfo" detected.%r_% + exit /b +) + +for %%N in (*.nfo) do ( + set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% + for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( + if /i not "%%D"=="" ( + if /i not "%%D"=="genre" (set "%%D=%%E") else ( + set "genre=%%E" + call :GetInfo-Collect + ) + ) + ) +) + +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" +if defined value ( + set "rating=%value:~0,3%" +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" + +if not defined genre ( + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + exit /b +) +set "genre=__%_genre%" +set "genre=%genre:__, =%" +set "genre=%genre:Science Fiction=SciFi%" +set "GenreLimit=%genre-characters-limit%" +set /a "GenreLimit=%GenreLimit%+1" + +:GetInfo-Genre +set /a GenreCount+=1 +if not "%_genre%"=="%genre%" ( + call set "_genre=%%genre:~0,%GenreCount%%%" + goto GetInfo-Genre +) +set /A "GenreLimiter=%GenreLimit%-4" +if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." +exit /b + +:GetInfo-Collect +set "_genre=%_genre%, %genre%" +exit /b + +::::::::::::::::::::::::::: CODE END :::::::::::::::::::::::::::::::::: \ No newline at end of file diff --git a/templates/Windows 11 Cover.bat b/templates/Windows 11 Cover.bat new file mode 100644 index 0000000..a988778 --- /dev/null +++ b/templates/Windows 11 Cover.bat @@ -0,0 +1,389 @@ +:: Template-Version=v1.0 + +:: Template Info +::======================================================== +::` Windows 11 theme folder icon. +::` ------------------------------------------------------ + + +:: Template Config +::======================================================== + +::--------- Movie Info --------------------- +set "display-movieinfo=yes" +set "show-Rating=yes" +set "show-Genre=yes" +set "genre-characters-limit=32" + +::--------- Additional Art ----------------- +set "use-Logo-instead-FolderName=yes" +set "display-clearArt=yes" + +::--------- Folder Name -------------------------- +set "display-FolderName=yes" +set "FolderName-Center=Auto" + :: options: Auto = Automatically put folder name on the center if numbers + :: of the characters is less than half of characters limit + :: Yes = Always put folder name on the center + :: No = Always put folder name on the left + + set "FolderNameShort-characters-limit=8" + set "FolderNameShort-font=Microsoft-PhagsPa-Bold" + set "FolderNameShort-size=7.7" + + :: Folder name position when it's on the left + set "FolderNameShort-Pos-Left-Gravity=SouthWest" + set "FolderNameShort-Pos-Left-X=+34" + set "FolderNameShort-Pos-Left-Y=+385" + + :: Folder name position when it's on the center + set "FolderNameShort-Pos-Center-Gravity=Center" + set "FolderNameShort-Pos-Center-X=-137" + set "FolderNameShort-Pos-Center-Y=-161" + + set "FolderNameLong-characters-limit=19" + set "FolderNameLong-font=Microsoft-PhagsPa" + set "FolderNameLong-size=3.5" + set "FolderNameLong-Pos-Gravity=NorthWest" + set "FolderNameLong-Pos-X=+0" + set "FolderNameLong-Pos-Y=+83" + +::--------- Picture Config ----------------- +set "Picture-Opacity=100%" + +set "Picture-Width=458" +set "Picture-Height=295" +set "Picture-Gravity=center" +set "Picture-Position-X=+1" +set "Picture-Position-Y=+14" + +set "Picture-Drawing-Brightness=-20" +set "Picture-Drawing-Contrast=35" +set "Picture-Drawing-Exposure=50" +set "Picture-Drawing-Saturation=100" +set "Picture-Drawing-Smoothness=0" + +::======================================================== + + +:: Images Source +::======================================================== +set "Win11Cover-Front=%rcfi%\images\Win11Cover-Front.png" +set "Win11Cover-BG=%rcfi%\images\Win11Cover.png" + +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" +::======================================================== + + +setlocal +call :LAYER-BASE +call :LAYER-RATING +call :LAYER-GENRE +call :LAYER-LOGO +call :LAYER-CLEARART +call :LAYER-FOLDER_NAME + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-FOLDER-NAME-SHORT% ^ + %CODE-FOLDER-NAME-LONG% ^ + %CODE-LOGO-IMAGE% ^ + %CODE-CLEARART-IMAGE% ^ + %CODE-PICTURE% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ + "%OutputFile%" + %deltemp% +endlocal +exit /b + + + +::::::::::::::::::::::::::: CODE START ::::::::::::::::::::::::::::::::: + +:LAYER-BASE +set CODE-BACKGROUND= ( ^ + "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over ( "%Win11Cover-BG%" ) -compose over -composite + +:: Creating mask to carve the picture +set "Win11CoverMask=%CD%\Win11CoverMask.png" + +"%Converter%" ^ + ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over ^ + ( "%InputFile%" ^ + -scale %Picture-Width%x%Picture-Height%! ^ + -gravity %Picture-Gravity% ^ + -geometry %Picture-Position-X%%Picture-Position-Y% ^ + "%Win11Cover-Front%" ^ + ) -compose over -composite "%Win11CoverMask%" + +"%Converter%" "%Win11CoverMask%" ^ + -brightness-contrast 0x10 ^ + -modulate 95,70 ^ + -background white ^ + -channel a ^ + -alpha remove ^ + -channel rgb ^ + -negate ^ + -alpha shape ^ + "%Win11CoverMask%" + +set /a "PicOp=255*%Picture-Opacity%/100" +set "Picture-Opacity=-alpha set -channel A -evaluate set %PicOp% +channel" + +set CODE-PICTURE= ( ^ + "%Win11Cover-BG%" ^ + -scale 512x512! ^ + -modulate %Picture-Drawing-Exposure%,%Picture-Drawing-Saturation% ^ + -brightness-contrast %Picture-Drawing-Brightness%x%Picture-Drawing-Contrast% ^ + -blur 0x%Picture-Drawing-Smoothness% ^ + %Picture-Opacity% "%Win11CoverMask%" ) -compose Over -composite + +set CODE-ICON-SIZE=-define icon:auto-resize="%TemplateIconSize%" + +set deltemp=del "%CD%\Win11CoverMask.png" "%CD%\Win11CoverLogoMask.png" 2>nul +exit /b + +:LAYER-RATING +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Rating%" EQU "yes" exit /b +call :GetInfo-nfo_file + +set CODE-STAR-IMAGE= ( ^ + "%star-image%" ^ + -scale 88x88! ^ + -gravity Northwest ^ + -geometry +0+356 ^ + ( +clone -background BLACK% ^ + -shadow 40x1.2+1.8+3 ) ^ + +swap -background none -layers merge -extent 512x512 ^ + ) -compose Over -composite +if not defined rating exit /b + +set CODE-RATING= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill rgba(0,0,0,0.9) ^ + -density 400 ^ + -pointsize 6 ^ + -kerning 0 ^ + label:"%rating%" ^ + -gravity Northwest ^ + -geometry +13+383 ^ + ( +clone -background ORANGE -shadow 30x1.2+2+2 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 30x1.2-2-2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2-2+2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2+2-2 ) +swap -background none -layers merge ^ + ) -compose Over -composite +exit /b + +:LAYER-GENRE +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Genre%" EQU "yes" exit /b +if not defined genre exit /b + +set CODE-GENRE= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill BLACK ^ + -density 400 ^ + -pointsize 5 ^ + -kerning 0 ^ + -gravity Northwest ^ + -geometry +76+395 ^ + label:"%genre%" ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 70x1.2-2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2-2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 0x0.2+4+5 ) +swap -background none -layers merge ^ + ) -composite +exit /b + +:LAYER-LOGO +if /i not "%use-Logo-instead-folderName%"=="yes" exit /b + +if exist "*logo.png" ( + for %%D in (*logo.png) do set "Logo=%%~fD"&set "LogoName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Logo :%LogoName%%ESC% +:: Creating mask to carve the logo +set "Win11CoverLogoMask=%CD%\Win11CoverLogoMask.png" + +"%Converter%" ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over ^ + ( "%Logo%" -trim +repage ^ + ( +clone -background BLACK -shadow 40x0.9+8.0+5.5 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 40x0.9-2.7-2.7 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 40x0.9-2.7+2.7 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 40x0.9+2.7-2.7 ) +swap -background none -layers merge ^ + -modulate 95,70 -brightness-contrast 0x10 -background white -channel a -alpha remove -channel rgb -negate -alpha shape ^ + -scale 160x68^ ^ + -gravity center ^ + -geometry -138-150 ^ + ) -compose over -composite "%Win11CoverLogoMask%" + +set CODE-LOGO-IMAGE= ( ^ + "%Win11Cover-BG%" ^ + -scale 512x512! ^ + -modulate 60,120 -brightness-contrast -5x30 -blur 0x1 ^ + "%Win11CoverLogoMask%" ) -compose Over -composite +exit /b + +:LAYER-CLEARART +if /i not "%display-clearArt%"=="yes" exit /b + +if exist "*clearart.png" ( + for %%D in (*clearart.png) do set "ClearArt=%%~fD"&set "ClearArtName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Clear Art :%ClearArtName%%ESC% + +set CODE-CLEARART-IMAGE= ( "%clearart%" ^ + -trim +repage ^ + -scale 230x125^ ^ + -background none ^ + -gravity South ^ + -geometry +90+388 ^ + ) -compose Over -composite +exit /b + + +:LAYER-FOLDER_NAME +if /i not "%display-FolderName%"=="yes" exit /b +if defined CODE-LOGO-IMAGE exit /b + +for %%F in ("%cd%") do set "foldername=%%~nxF" +set "FolNamShort=%foldername%" +set "FolNamShortLimit=%FolderNameShort-characters-limit%" +set /a "FolNamShortLimit=%FolNamShortLimit%+1" +set "FolNamLong=%foldername%" +set "FolNamLongLimit=%FolderNameLong-characters-limit%" +set /a "FolNamLongLimit=%FolNamLongLimit%+1" + +:GetInfo-FolderName-Short +set /a FolNamShortCount+=1 +if not "%_FolNamShort%"=="%FolderName%" ( + call set "_FolNamShort=%%FolderName:~0,%FolNamShortCount%%%" + goto GetInfo-FolderName-Short +) +set /A "FolNamShortLimiter=%FolNamShortLimit%-4" +if %FolNamShortCount% GTR %FolNamShortLimit% call set "FolNamShort=%%FolderName:~0,%FolNamShortLimiter%%%..." + + +set "FolNamCenter=-gravity %FolderNameShort-Pos-Center-Gravity% -geometry %FolderNameShort-Pos-Center-X%%FolderNameShort-Pos-Center-Y%" +set "FolNamLeft=-gravity %FolderNameShort-Pos-Left-Gravity% -geometry %FolderNameShort-Pos-Left-X%%FolderNameShort-Pos-Left-Y%" +if %FolNamShortCount% LEQ %FolNamShortLimiter% (set "FolNamPos=%FolNamLeft%") else (set "FolNamPos=%FolNamCenter%") +if /i "%FolderName-Center%"=="yes" set "FolNamPos=%FolNamCenter%" +if /i "%FolderName-Center%"=="no" set "FolNamPos=%FolNamLeft%" + +:GetInfo-FolderName-Long +set /a FolNamLongCount+=1 +if not "%_FolNamLong%"=="%FolderName%" ( + call set "_FolNamLong=%%FolderName:~0,%FolNamLongCount%%%" + goto GetInfo-FolderName-Long +) +set /A "FolNamLongLimiter=%FolNamLongLimit%-4" +if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." + +set CODE-FOLDER-NAME-SHORT= ^ + ( ^ + -font "%FolderNameShort-font%" ^ + -fill rgba(255,255,255,0.85) ^ + -density 400 ^ + -pointsize %FolderNameShort-size% ^ + %FolNamPos% ^ + -background none ^ + label:"%FolNamShort%" ^ + ( +clone -background BLACK -shadow 6x1+0.3+0.3 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x1-0.3-0.3 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x1-0.3+0.3 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x1+0.3-0.3 ) +swap -background none -layers merge ^ + ) -composite + +if %FolNamShortCount% LEQ %FolNamShortLimit% exit /b + +set CODE-FOLDER-NAME-LONG= ^ + ( ^ + -font "%FolderNameLong-font%" ^ + -fill rgba(255,255,255,0.9) ^ + -density 400 ^ + -pointsize %FolderNameLong-size% ^ + -kerning -0.5 ^ + -gravity %FolderNameLong-Pos-Gravity% ^ + -geometry %FolderNameLong-Pos-X%%FolderNameLong-Pos-Y% ^ + label:"%FolNamLong%" ^ + ( +clone -background BLACK -shadow 3x4.5+0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x4.5-0.2-0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x4.5-0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x4.5+0.2-0.2 ) +swap -background none -layers merge ^ + ) -composite + +if "%FolderNameLong-characters-limit%"=="0" set "CODE-FOLDER-NAME-LONG=" +exit /b + + +:GetInfo-nfo_file +if not exist "*.nfo" ( + rem echo %TAB% %g_%No ".nfo" detected.%r_% + exit /b +) + +for %%N in (*.nfo) do ( + set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% + for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( + if /i not "%%D"=="" ( + if /i not "%%D"=="genre" (set "%%D=%%E") else ( + set "genre=%%E" + call :GetInfo-Collect + ) + ) + ) +) + +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" +if defined value ( + set "rating=%value:~0,3%" +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" + +if not defined genre ( + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + exit /b +) +set "genre=__%_genre%" +set "genre=%genre:__, =%" +set "genre=%genre:Science Fiction=SciFi%" +set "GenreLimit=%genre-characters-limit%" +set /a "GenreLimit=%GenreLimit%+1" + +:GetInfo-Genre +set /a GenreCount+=1 +if not "%_genre%"=="%genre%" ( + call set "_genre=%%genre:~0,%GenreCount%%%" + goto GetInfo-Genre +) +set /A "GenreLimiter=%GenreLimit%-4" +if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." +exit /b + +:GetInfo-Collect +set "_genre=%_genre%, %genre%" +exit /b + +::::::::::::::::::::::::::: CODE END :::::::::::::::::::::::::::::::::: \ No newline at end of file diff --git a/templates/Windows 11 Folderify.bat b/templates/Windows 11 Folderify.bat new file mode 100644 index 0000000..f43ab1c --- /dev/null +++ b/templates/Windows 11 Folderify.bat @@ -0,0 +1,413 @@ +:: Template-Version=v1.0 + +:: Template Info +::======================================================== +::` This template was inspired by Folderify +::` https://github.com/lgarron/folderify +::` ------------------------------------------------------ + + +:: Template Config +::======================================================== + +::--------- Movie Info --------------------- +set "display-movieinfo=yes" +set "show-Rating=yes" +set "show-Genre=yes" +set "genre-characters-limit=32" + +::--------- Additional Art ----------------- +set "use-Logo-instead-FolderName=yes" +set "display-clearArt=yes" + +::--------- Folder Name -------------------------- +set "display-FolderName=yes" +set "FolderName-Center=Auto" + :: options: Auto = Automatically put folder name on the center if numbers + :: of the characters is less than half of characters limit + :: Yes = Always put folder name on the center + :: No = Always put folder name on the left + + set "FolderNameShort-characters-limit=7" + set "FolderNameShort-font=Microsoft-PhagsPa-Bold" + set "FolderNameShort-size=7.7" + + :: Folder name position when it's on the left + set "FolderNameShort-Pos-Left-Gravity=SouthWest" + set "FolderNameShort-Pos-Left-X=+34" + set "FolderNameShort-Pos-Left-Y=+385" + + :: Folder name position when it's on the center + set "FolderNameShort-Pos-Center-Gravity=Center" + set "FolderNameShort-Pos-Center-X=-137" + set "FolderNameShort-Pos-Center-Y=-161" + + set "FolderNameLong-characters-limit=19" + set "FolderNameLong-font=Microsoft-PhagsPa" + set "FolderNameLong-size=3.5" + set "FolderNameLong-Pos-Gravity=SouthWest" + set "FolderNameLong-Pos-X=+3" + set "FolderNameLong-Pos-Y=+333" + +::--------- Picture Config ----------------- +set "Picture-Drawing=yes" +set "Picture-Opacity=100%" + +set "Picture-TrimTransparentSpace=yes" +set "Picture-Width=400" +set "Picture-Height=230" +set "Picture-Gravity=center" +set "Picture-Position-X=-0" +set "Picture-Position-Y=+20" + + ::--------- if "Picture Drawing=YES" + set "Picture-Drawing-ON-Brightness=-8" + set "Picture-Drawing-ON-Contrast=40" + set "Picture-Drawing-ON-Exposure=55" + set "Picture-Drawing-ON-Saturation=80" + set "Picture-Drawing-ON-Smoothness=0" + + ::--------- if "Picture Drawing=NO" + set "Picture-Drawing-OFF-Brightness=-5" + set "Picture-Drawing-OFF-Contrast=15" + set "Picture-Drawing-OFF-Exposure=60" + set "Picture-Drawing-OFF-Saturation=100" + set "Picture-Drawing-OFF-Smoothness=15" + +set "ReAdjust-BG-pos=yes" +::======================================================== + + +:: Images Source +::======================================================== +set "Win11Folderify-BG=%rcfi%\images\Win11Folderify.png" +set "star-image=%rcfi%\images\star.png" +set "canvas=%rcfi%\images\- canvas.png" +::======================================================== + + +setlocal +call :LAYER-BASE +call :LAYER-RATING +call :LAYER-GENRE +call :LAYER-LOGO +call :LAYER-CLEARART +call :LAYER-FOLDER_NAME + "%Converter%" ^ + %CODE-BACKGROUND% ^ + %CODE-FOLDERIFY% ^ + %CODE-FOLDER-NAME-SHORT% ^ + %CODE-FOLDER-NAME-LONG% ^ + %CODE-LOGO-IMAGE% ^ + %CODE-CLEARART-IMAGE% ^ + %CODE-PICTURE% ^ + %CODE-STAR-IMAGE% ^ + %CODE-RATING% ^ + %CODE-GENRE% ^ + %CODE-ICON-SIZE% ^ + "%OutputFile%" + %deltemp% +endlocal +exit /b + + + +::::::::::::::::::::::::::: CODE START ::::::::::::::::::::::::::::::::: + +:LAYER-BASE +set CODE-BACKGROUND= ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over + +if /i not "%ReAdjust-BG-pos%"=="yes" ( + set ReAdjust-Position=-resize 512x512^ -gravity center -extent 512x512! +) else ( + set ReAdjust-Position= ^ + -trim +repage ^ + -resize x352 ^ + -gravity South ^ + -geometry -0+92 ^ + -extent 512x512! +) + +set /a "PicOp=255*%Picture-Opacity%/100" +set "Picture-Opacity=-alpha set -channel A -evaluate set %PicOp% +channel" + +set CODE-FOLDERIFY= ( "%Win11Folderify-BG%" %ReAdjust-Position% ) -compose over -composite + +if /i "%Picture-TrimTransparentSpace%"=="yes" (set "TrimPNG=-trim +repage") else (set "TrimPNG=") + +:: Creating mask to carve the picture +set "Win11FolderifyMask=%CD%\Win11FolderifyMask.png" + +if /i "%Picture-Drawing%"=="yes" ( + set "PictureIntensity=-modulate %Picture-Drawing-ON-Exposure%,%Picture-Drawing-ON-Saturation% -brightness-contrast %Picture-Drawing-ON-Brightness%x%Picture-Drawing-ON-Contrast% -blur 0x%Picture-Drawing-ON-Smoothness%" + set "Picture-Drawing=-modulate 95,70 -brightness-contrast 0x10 -background white -channel a -alpha remove -channel rgb -negate -alpha shape" +) else ( + set "Picture-Drawing=" + set "PictureIntensity=-modulate %Picture-Drawing-OFF-Exposure%,%Picture-Drawing-OFF-Saturation% -brightness-contrast %Picture-Drawing-OFF-Brightness%x%Picture-Drawing-OFF-Contrast% -blur 0x%Picture-Drawing-OFF-Smoothness%" + ) + +"%Converter%" ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over ^ + ( "%InputFile%" %Picture-Opacity% %TrimPNG% ^ + ( +clone -background BLACK -shadow 20x0.6+4.5+2.0 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 20x0.6-0.1-0.1 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 20x0.6-0.1+0.1 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 20x0.6+0.1-0.1 ) +swap -background none -layers merge ^ + %Picture-Drawing% ^ + -scale %Picture-Width%x%Picture-Height%^ ^ + -gravity %Picture-Gravity% ^ + -geometry %Picture-Position-X%%Picture-Position-Y% ^ + ) -compose over -composite "%Win11FolderifyMask%" + + +set CODE-PICTURE= ( ^ + "%Win11Folderify-BG%" %ReAdjust-Position% ^ + -scale 512x512! ^ + %PictureIntensity% ^ + "%Win11FolderifyMask%" ) -compose Over -composite + +set CODE-ICON-SIZE=-define icon:auto-resize="%TemplateIconSize%" + +set deltemp=del "%CD%\Win11FolderifyMask.png" "%CD%\Win11FolderifyLogoMask.png" 2>nul +exit /b + +:LAYER-RATING +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Rating%" EQU "yes" exit /b +call :GetInfo-nfo_file + +set CODE-STAR-IMAGE= ( ^ + "%star-image%" ^ + -scale 88x88! ^ + -gravity Northwest ^ + -geometry +0+356 ^ + ( +clone -background BLACK% ^ + -shadow 40x1.2+1.8+3 ) ^ + +swap -background none -layers merge -extent 512x512 ^ + ) -compose Over -composite +if not defined rating exit /b + +set CODE-RATING= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill rgba(0,0,0,0.9) ^ + -density 400 ^ + -pointsize 6 ^ + -kerning 0 ^ + label:"%rating%" ^ + -gravity Northwest ^ + -geometry +13+383 ^ + ( +clone -background ORANGE -shadow 30x1.2+2+2 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 30x1.2-2-2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2-2+2 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 30x1.2+2-2 ) +swap -background none -layers merge ^ + ) -compose Over -composite +exit /b + +:LAYER-GENRE +if /i not "%display-movieinfo%" EQU "yes" exit /b +if /i not "%Show-Genre%" EQU "yes" exit /b +if not defined genre exit /b + +set CODE-GENRE= ( ^ + -font "%rcfi%\resources\ANGIE-BOLD.TTF" ^ + -fill BLACK ^ + -density 400 ^ + -pointsize 5 ^ + -kerning 0 ^ + -gravity Northwest ^ + -geometry +76+395 ^ + label:"%genre%" ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background YELLOW -shadow 70x1.2-2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2-2.6+2.6 ) +swap -background none -layers merge ^ + ( +clone -background ORANGE -shadow 70x1.2+2.6-2.6 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 0x0.2+4+5 ) +swap -background none -layers merge ^ + ) -composite +exit /b + +:LAYER-LOGO +if /i not "%use-Logo-instead-folderName%"=="yes" exit /b + +if exist "*logo.png" ( + for %%D in (*logo.png) do set "Logo=%%~fD"&set "LogoName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Logo :%LogoName%%ESC% +:: Creating mask to carve the logo +set "Win11FolderifyLogoMask=%CD%\Win11FolderifyLogoMask.png" + +"%Converter%" ( "%canvas%" ^ + -scale 512x512! ^ + -background none ^ + -extent 512x512 ^ + ) -compose Over ^ + ( "%Logo%" -trim +repage ^ + ( +clone -background BLACK -shadow 40x0.9+8.0+5.5 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 40x0.9-2.7-2.7 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 40x0.9-2.7+2.7 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 40x0.9+2.7-2.7 ) +swap -background none -layers merge ^ + -modulate 95,70 -brightness-contrast 0x10 -background white -channel a -alpha remove -channel rgb -negate -alpha shape ^ + -scale 165x68^ ^ + -gravity center ^ + -geometry -134-150 ^ + ) -compose over -composite "%Win11FolderifyLogoMask%" + +set CODE-LOGO-IMAGE= ( ^ + "%Win11Folderify-BG%" %ReAdjust-Position% ^ + -scale 512x512! ^ + -modulate 60,120 -brightness-contrast -5x30 -blur 0x1 ^ + "%Win11FolderifyLogoMask%" ) -compose Over -composite +exit /b + +:LAYER-CLEARART +if /i not "%display-clearArt%"=="yes" exit /b + +if exist "*clearart.png" ( + for %%D in (*clearart.png) do set "ClearArt=%%~fD"&set "ClearArtName=%%~nxD" +) else exit /b + +echo %TAB%%ESC%%g_%Clear Art :%ClearArtName%%ESC% + +set CODE-CLEARART-IMAGE= ( "%clearart%" ^ + -trim +repage ^ + -scale 230x125^ ^ + -background none ^ + -gravity South ^ + -geometry +90+388 ^ + ) -compose Over -composite +exit /b + + +:LAYER-FOLDER_NAME +if /i not "%display-FolderName%"=="yes" exit /b +if defined CODE-LOGO-IMAGE exit /b + +for %%F in ("%cd%") do set "foldername=%%~nxF" +set "FolNamShort=%foldername%" +set "FolNamShortLimit=%FolderNameShort-characters-limit%" +set /a "FolNamShortLimit=%FolNamShortLimit%+1" +set "FolNamLong=%foldername%" +set "FolNamLongLimit=%FolderNameLong-characters-limit%" +set /a "FolNamLongLimit=%FolNamLongLimit%+1" + +:GetInfo-FolderName-Short +set /a FolNamShortCount+=1 +if not "%_FolNamShort%"=="%FolderName%" ( + call set "_FolNamShort=%%FolderName:~0,%FolNamShortCount%%%" + goto GetInfo-FolderName-Short +) +set /A "FolNamShortLimiter=%FolNamShortLimit%-4" +if %FolNamShortCount% GTR %FolNamShortLimit% call set "FolNamShort=%%FolderName:~0,%FolNamShortLimiter%%%..." + + +set "FolNamCenter=-gravity %FolderNameShort-Pos-Center-Gravity% -geometry %FolderNameShort-Pos-Center-X%%FolderNameShort-Pos-Center-Y%" +set "FolNamLeft=-gravity %FolderNameShort-Pos-Left-Gravity% -geometry %FolderNameShort-Pos-Left-X%%FolderNameShort-Pos-Left-Y%" +if %FolNamShortCount% LEQ %FolNamShortLimiter% (set "FolNamPos=%FolNamLeft%") else (set "FolNamPos=%FolNamCenter%") +if /i "%FolderName-Center%"=="yes" set "FolNamPos=%FolNamCenter%" +if /i "%FolderName-Center%"=="no" set "FolNamPos=%FolNamLeft%" + +:GetInfo-FolderName-Long +set /a FolNamLongCount+=1 +if not "%_FolNamLong%"=="%FolderName%" ( + call set "_FolNamLong=%%FolderName:~0,%FolNamLongCount%%%" + goto GetInfo-FolderName-Long +) +set /A "FolNamLongLimiter=%FolNamLongLimit%-4" +if %FolNamLongCount% GTR %FolNamLongLimit% call set "FolNamLong=%%FolderName:~0,%FolNamLongLimiter%%%..." + +set CODE-FOLDER-NAME-SHORT= ^ + ( ^ + -font "%FolderNameShort-font%" ^ + -fill rgba(255,255,255,0.85) ^ + -density 400 ^ + -pointsize %FolderNameShort-size% ^ + %FolNamPos% ^ + -background none ^ + label:"%FolNamShort%" ^ + ( +clone -background BLACK -shadow 6x1+0.3+0.3 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x1-0.3-0.3 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x1-0.3+0.3 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 6x1+0.3-0.3 ) +swap -background none -layers merge ^ + ) -composite + +if %FolNamShortCount% LEQ %FolNamShortLimit% exit /b + +set CODE-FOLDER-NAME-LONG= ^ + ( ^ + -font "%FolderNameLong-font%" ^ + -fill rgba(255,255,255,0.9) ^ + -density 400 ^ + -pointsize %FolderNameLong-size% ^ + -kerning -0.5 ^ + -gravity %FolderNameLong-Pos-Gravity% ^ + -geometry %FolderNameLong-Pos-X%%FolderNameLong-Pos-Y% ^ + label:"%FolNamLong%" ^ + ( +clone -background BLACK -shadow 3x4.5+0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x4.5-0.2-0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x4.5-0.2+0.2 ) +swap -background none -layers merge ^ + ( +clone -background BLACK -shadow 3x4.5+0.2-0.2 ) +swap -background none -layers merge ^ + ) -composite + +if "%FolderNameLong-characters-limit%"=="0" set "CODE-FOLDER-NAME-LONG=" +exit /b + + +:GetInfo-nfo_file +if not exist "*.nfo" ( + rem echo %TAB% %g_%No ".nfo" detected.%r_% + exit /b +) + +for %%N in (*.nfo) do ( + set "nfoName=%%~nxN" + echo %TAB%%ESC%%g_%Movie info :%%~nxN%ESC% + for /f "usebackq tokens=1,2,3,4 delims=<>" %%C in ("%%N") do ( + if /i not "%%D"=="" ( + if /i not "%%D"=="genre" (set "%%D=%%E") else ( + set "genre=%%E" + call :GetInfo-Collect + ) + ) + ) +) + +if not defined value if defined userrating if not "%userrating%"=="0" set "value=%userrating%" +if defined value ( + set "rating=%value:~0,3%" +) else echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_% + +if "%rating%"=="0.0" echo %TAB% %r_%%i_% %_%%g_% Error: No rating value provided in "%nfoName%"%r_%&set "rating=" +if "%rating%"=="10." set "rating=10" + +if not defined genre ( + echo %TAB% %r_%%i_% %_%%g_% Error: No genre provided in "%nfoName%"%r_% + exit /b +) +set "genre=__%_genre%" +set "genre=%genre:__, =%" +set "genre=%genre:Science Fiction=SciFi%" +set "GenreLimit=%genre-characters-limit%" +set /a "GenreLimit=%GenreLimit%+1" + +:GetInfo-Genre +set /a GenreCount+=1 +if not "%_genre%"=="%genre%" ( + call set "_genre=%%genre:~0,%GenreCount%%%" + goto GetInfo-Genre +) +set /A "GenreLimiter=%GenreLimit%-4" +if %GenreCount% GTR %GenreLimit% call set "genre=%%genre:~0,%GenreLimiter%%%..." +exit /b + +:GetInfo-Collect +set "_genre=%_genre%, %genre%" +exit /b + +::::::::::::::::::::::::::: CODE END :::::::::::::::::::::::::::::::::: \ No newline at end of file