PIC (Preview Image in CLI ) is a lightweight Rust tool to preview images in your terminal!
With support for various image protocols (Kitty, Sixel, iTerm) it works in several terminals, and can still use Unicode blocks in case your terminal isn't supported.
PIC also provides a library for you to use in your own tools!
load/clear)--x and --y options to choose where to display your image--cols and --rows options to choose the size of your image (always tries preserving ratio)--upscale option to preview image at full wanted size if needed--static and --loop options to interact with GIFs--protocol option to choose a protocol--load --display and --clear options to interact with Kitty protocolPrerequisites - Git - Rust toolchain
Command line instructions ```bash
git clone https://github.com/emsquid/pic
cargo install --path pic
pic Images/YourFavouriteImage.png --cols 13 ... ```
Prerequisites - Rust toolchain
Command line instructions ```bash
cargo install pic
pic Images/YourFavouriteImage.png --cols 13 ... ```
Prerequisites - Rust toolchain
Command line instructions ```bash
cargo add pic ```
Blocks & Top quality previewing

Wide choice of options

Really nice GIFs in iTerm

And also nice in Blocks

``` Preview Image in CLI.
Usage: pic [OPTIONS]
Arguments:
Options:
-x, --x
```rust use pic
fn main() { // Choose images to preview let path1 = std::path::PathBuf::from("Picture/MyFavImage.png"); let mut options = pic::options::Options::new(vec![path1]);
// Set your options
options.set_position(Some(10), None);
options.set_size(Some(50), Some(50));
options.upscale();
// Preview
if let Err(err) = pic::previewer::preview(&mut std::io::stdout(), &mut options) {
eprintln!("{err}");
};
} ```
Sixel protocol may require libsixel to be installediTerm protocol always loop GIFs, except if --static is specifiedHelp would be greatly appreciated