37 lines
1.5 KiB
Markdown
37 lines
1.5 KiB
Markdown
# imageoptimizer
|
|
|
|
imageoptimizer is a tool for bulk compression of JPG images. It will re-compress original images and replace them if the savings is
|
|
more than the requested percentage difference and optionally if the original file is bigger than a cefrtain size. You can also
|
|
set a maximum resolution for images and they will be rescaled if they exceed it, however they are only replaced if they meet the size
|
|
difference requirement set.
|
|
|
|
By default it operates in a "dry run" mode where images are not replaced but individual and total savings are reported at the end, unless you supply the '-replace' flag.
|
|
|
|
# Why?
|
|
|
|
Poorly optimized images in most contexts waste space and bandwidth unnecessarily. JPEG compression was designed to highly optimize photos with
|
|
little or no visually identifiable differences in default conditions, and for scenarios where absolute quality is less important it can compress
|
|
even farther. Generally quality levels below 75 are where you start to notice a difference.
|
|
|
|
# Installtion
|
|
|
|
With a recent Go compiler, installation is as easy as:
|
|
|
|
```
|
|
go install git.teamworkapps.com/shortcut/imageoptimizer@latest
|
|
```
|
|
|
|
# Usage
|
|
|
|
Recursively check all images starting from the current path. Calculate actions and total savings but don't make any changes.
|
|
|
|
```
|
|
imageoptimizer -recursive -diff 25
|
|
```
|
|
|
|
Replace images in the current path with a compressed version if compressing at 80% quality reduces file size by at least 30%
|
|
|
|
```
|
|
imageoptimizer -quality 80 --replace --diff 30
|
|
```
|