Package: phulize
Photo Resizer CLI + GUITable of ContentsDescriptionFeaturesPrerequisitesInstallationUsageSupportLicenseStatusDescriptionPhoto Resizer is a CLI (command-line interface) tool which takes a folder full of photos and resizes each photo
recursively depending on the extensions chosen. It does this while conserving folder hierarchy without having to
organize each photo again.All photos are checked if they are valid or corrupted before the resizing as well as after, to make sure any photos are
resized correctly.A filter is also available for searching for photos, meaning it's possible to only resize photos which the size is
higher or below the specified. More details below.All original photos are copied to a different folder which can be configured, also cloning the existent folder
hierarchy. If any image fails to resize, this photo will remain in the original folder.At the start, a safety question is displayed to make sure the path inserted is the correct one as it will be permanently
modified. This safety question can be disabled.An option to shut down the device is also available as it can be useful to leave the process running for a long time
without worrying.When all is finished, an output file will be created with statistics and relevant information, such as:list of images resized;display original size and resized size of each image;display all photos' original size and resized size;display how much size was resized between all photos;total number of photos resized, increased, unsuccessful and found;warning if the photo size increased instead of decreased;GUIGuide coming soon...Some images for current interface:Output file example... (hidden)

[2023-04-05 17:44:13.979793]
The following photo was resized: C:\Users\<username>\Desktop\example\1subfolder\anothersubfolder\1680170906941
	-The original photo size was: 1.98 MB
	-The resized photo size is: 2.04 MB
        [WARNING] Size increased!

[2023-04-05 17:44:14.209180]
The following photo was resized: C:\Users\<username>\Desktop\example\1subfolder\anothersubfolder\1680170908790
	-The original photo size was: 699.66 KB
	-The resized photo size is: 258.03 KB


[2023-04-05 17:44:14.211177]
Final Statistics:
	Size of all original photos: 9.29 MB
	Size of all resized photos: 4.67 MB
	Space in disk saved: 4.63 MB

	- Total number of photos with reduced size: 6
	- Total number of photos with increased size: 1
	- Total number of photos unsuccessfully reduced: 0
	- Total number of photos found: 7Folder exampleThe original folder full of images to be resized:Content of original folder before resize with pictures' original size:Both the original folder and the folder created after all is finished, which contains all original images:Display of both folders containing exactly the same hierarchy:Content of original folder after resize with pictures' reduced size at 55% quality and the output file:FeaturesFeatureresize photos in bulk conserving folder hierarchyresize photos depending on specific extensionresize photos recursively  within folderschecking of invalid or corrupted photosfilter photos to resize depending on their sizeall original photos are preserved in another folder in case of something going wrongcreation of a final output file containing relevant information about the processexistence of a safety questionoption of shutting down the device when the resizing process is finishedconfigurations provided will be save for easier usage of the commandAny new features areverywelcomed.Future featuresNothing at the moment.PrerequisitesPython 3must be installed.Installationpip--no-cache-dirinstallphulizeor,pip3--no-cache-dirinstallphulizeUsageCommand (shortcut)Command (full)RequiredDefault valueDescription-r--runREQUIREDto start the resizing---If specified, the resizing will start running using user-defined configurations.-p--pathREQUIREDto resize photosemptyAbsolute path of the folder containing images to be resized.-e--extensionsREQUIREDto resize photosemptyInsert the extensions of all the images that should be resized.-q--qualityOPTIONAL55The desired quality of the image. An original image has 100% quality, meaning that anything below this value will reduce the size of the images.-f--folderOPTIONAL_ORIGINALThe name or path of the folder which will contain all original photos already resized.-hi--higherOPTIONAL0The size inBytesof any image that should be resized. Any images' size higher than this value will be resized.-b--belowOPTIONAL0The size inBytesof any image that should be resized. Any images' size below this value will be resized.-----safety-question/--no-safety-questionOPTIONALTrueEnable or disable the safety question-----shutdown/--no-shutdownOPTIONALFalseEnable or disable the shutting down device when process is finished.BeforeIf possible,make a backup of the folder to be resized, in case anything goes wrong. This will ensure no data is lost.It's recommended that a trial is made first (with dummy images), to check the best quality to use.AfterMake sure to check the output file for any unexpected outcomes, regarding if it resized correctly, as expected, or not.Make sure to check the images resized, to make sure there is no loss. The program itself checks if an image is or becomes corrupted after resizing, but make sureImportantThe quality of the image to be resized, by default, is 50%, meaning all images to resize will have, approximately, 50% less quality than the original image. This can be change, adding the '--quality' argument with a number between 0 and 100.Any additional help can be provided if the following command is run:phulize--helpor,phulize-hRunning the previous command is also useful to make sure the package was downloaded correctly.Example of an initial command, could be:phulize-p"C:\Users\<username>\Desktop\example"-q60-ejpgpngThis will configure the path of the folder containing images to resize, the quality those images should have and the extensions to search for and resize.Any configuration can also be individually inserted:phulize-q50phulize-f"CONVERTED"The following command corresponds to only resizing images that have a size higher than 1MB:phulize-hi1048576The opposite is also true (resizing images that have a size lower than 1MB):phulize-b1048576To disable the previous filters ('--hi' or '--b'), one can simply set them to 0 (zero):phulize-b0The previous configuration can be seen in a file, with the content just like the following:below: 0
extensions:
- .jpg
- .png
folder: CONVERTED
higher: 1048576
path: C:\Users\<username>\Desktop\example
quality: 50Usage of boolean arguments:phulize--safety-question
phulize--no-safety-questionphulize--shutdown
phulize--no-shutdownTo run the resizing after all configurations are done:phulize --runSupportIf any problems occurs, feel free to open an issue.LicenseMITStatusCurrently maintaining it.