sic is a CLI tool to (batch) process images and an image-rs front-end. It can be used to convert between image formats and manipulate images using image operations. It aims to include all primary image functionality, and eventually also support the most prominent imageproc manipulation routines.
The changelog below lists notable changes for sic. It doesn't list most internal changes.
- Farbfeld encoder now converts color type to Rgba16, unless disabled by user.
- JPEG encoder now converts color type to Rgb8 for static images, unless disabled by user.
- GIG encoder now converts color type to Rgba8 for static images, unless disabled by user
- PBM encoder now converts color type to L8 for static images, unless disabled by user.
- PGM encoder now converts color type to L8 for static images, unless disabled by user.
- PPM encoder now converts color type to Rgb8 for static images, unless disabled by user.
- Removed experimental flag
--enable-output-format-decider-fallback
- Updated image to 0.25.2
- Disabled AVIF decoder for now due to cross-platform compilation issues (dav1d-rs).
0.22.4 - 2023-09-17
- Updated image to 0.24.7
0.22.3 - 2023-05-18
- Updated rav1e (locked) to 0.6.6
0.22.2 - 2023-04-28
- Context was added to errors returned during the image pipeline: the input (file or stdin) will now be reported
0.22.1 - 2023-04-23
- Fixed an outdated lock file issue
0.22.0 - 2023-04-22
- Encoding and decoding support for QOI
- Support encoding TIFF without
--image-output-format-fallback
flag enabled - Support encoding OpenExr without
--image-output-format-fallback
flag enabled
- Updated image to 0.24.6
0.21.1 - 2023-01-21
- Fixed an issue where it was not possible to read an input file via stdin
0.21.0 - 2023-01-19
- Added
webp
encoding support
0.20.1 - 2022-12-12
- Updated dependencies
0.20.0 - 2022-03-30
- Port image to image 0.24
0.19.1 - 2022-03-17
This is intended to be the last update before we port sic to image 0.24
.
- Updated dependencies
0.19.0 - 2021-06-05
- Added horizontal gradient image operation
- Added vertical gradient image operation
- Added Otsu thresholding image operation
0.18.0 - 2021-03-09
- Option to set repeat value for animated GIF encoded images
- Automatic color type adjustment setting was ignored
0.17.0 - 2021-02-20
- Added animated images support: it is now possible to load and save all frames, and apply operations on all frames, of animated images
- Animated images no longer load the first frame as static image (by default)
- Frame index selection is now zero-indexed instead of one-indexed
0.16.1 - 2021-02-13
- Added AVIF support to documentation
0.16.0 - 2021-02-13
- Decoding support for AVIF
0.15.0 - 2020-12-25
- Encoding support for TGA
- Encoding support for AVIF
0.14.0 - 2020-08-07
- Image script: add
overlay
operation which can be used to draw one image over another --select-frame
now supports images encoded as APNG--no-skip-unsupported-extensions
CLI flag to enumerate all files when using glob based input; not just files with supported extensions
- When using glob paths,
--glob-input
and--glob-output
should now be used instead of--input
and--output
combined with--mode glob
- Glob based input now skips unsupported files by default (disable with
--no-skip-unsupported-extensions
)
- Removed CLI option
--mode
(use--glob-input
and--glob-output
instead)
- Glob input paths starting with "./" or "." should now work
0.12.0 - 2020-06-01
- Option to load image script from a file
- Image script: add
draw-text
image operation
- Renamed image script operation
fliph
toflip-horizontal
- Renamed image script operation
flipv
toflip-vertical
- Renamed image script operation
huerotate
tohue-rotate
- Renamed image script modifier
preserve_aspect_ratio
topreserve-aspect-ratio
- Renamed image script modifier
sampling_filter
tosampling-filter
- Changed CLI flag
--set-preserve-aspect-ratio
to--preserve-aspect-ratio
- Changed CLI flag
--set-resize-sampling-filter
to--sampling-filter
- Folders are now skipped in
glob
mode
0.11.0 - 2020-05-06
- Image script: add
diff
image operation which highlights the differences between images - Encoding and decoding support for Farbfeld
- Batch process a set of images with glob pattern matching on file inputs (requires option
--mode glob
to be set) - Better error handling
- Set default sampling filter for image resizing to Lanczos3
- INPUT_FILE and OUTPUT_FILE positional arguments (use
--input
and--output
instead!)
- Updated embedded dependency licenses
0.10.0 - 2019-09-28 [yanked]
- CLI interface to use image script operations directly as CLI options and flags
- Option to select specific frames of animated GIFs
- Script to generate shell completions (internal)
- Support reading from stdin and writing to stdout
- Support input and output file paths by setting the
--input
(-i
) and--output
(-o
) directives respectively
- INPUT_FILE and OUTPUT_FILE positional arguments (to be removed)
- Embedded user manual
- The image script blur command took an unsigned integer as argument but it should have been a floating point number
0.9.0 - 2019-06-08
- Image script: add global options table
- Image script: add
set resize keep_aspect_ratio
option - Image script: add
set resize sampling_filter <value>
option - Image script: add
crop
image operation - Add '-x' as shorthand for, and set '-A' to be an alias for '--apply-operations'
- ⚠ Require the
;
separator between image operations - ⚠ Renamed option --force-format to --output-format
- ⚠ Renamed --script to --apply-operations
0.8.1 - 2018-12-11
- Switched from nightly Rust toolchain to stable (internal)
0.8.0 - 2018-11-30
- Option to set JPEG quality parameter
- Option to set PNM encoding type
- Option to set PNM subtype
- Option to automatically adjust color type for output format
- Updated image to v0.20 (internal)
0.7.0 - 2018-08-21
- Image script: add
brighten
image operation - Image script: add
contrast
image operation - Image script: add
filter3x3
image operation - Image script: add
grayscale
image operation - Image script: add
huerotate
image operation - Image script: add
invert
image operation - Image script: add
rotate90
image operation - Image script: add
rotate180
image operation - Image script: add
rotate270
image operation - Image script: add
unsharpen
image operation - Embedded user manual
0.6.0 - 2018-08-10
- Embedded license in cli
0.5.0 - 2018-08-10 [yanked]
- Image operations which can be applied by providing commands to the
--script
cli option - Image script: add
blur
image operation - Image script: add
flip horizontal
image operation - Image script: add
flip vertical
image operation - Image script: add
flip resize
image operation
yanked: --version
not updated
0.4.0 - 2018-07-03
- Updated image from v0.17 to v0.19 (internal)
0.2.0 - 2018-06-03
- Determine output format based on file extension
0.1.0 - 2017-11-12
- CLI for converting between image formats, powered by image
- Decoding support for PNG, JPEG, GIF, BMP, ICO, TIFF and WebP (not all formats are completely supported)
- Encoding support for JPEG, PNG, GIF, ICO, PPM