Update README.md
This commit is contained in:
parent
388536a7aa
commit
7b5236909a
82
README.md
82
README.md
|
@ -1,24 +1,77 @@
|
|||
# Caesium Command Line Tools [](https://github.com/sponsors/Lymphatus)
|
||||
|
||||
-----------------------
|
||||
|
||||
[](https://github.com/Lymphatus/caesium-clt/actions?query=workflow%3ATest)
|
||||
[](https://github.com/Lymphatus/caesium-clt/actions/workflows/clippy.yml)
|
||||
[](https://github.com/Lymphatus/caesium-clt/actions/workflows/fmt.yml)
|
||||
|
||||
v1.0.0-beta.0
|
||||
**caesiumclt** is a command line tool for image compression written in Rust, supporting lossy, lossless, and maximum
|
||||
size compression.
|
||||
Based on [libcaesium](https://github.com/Lymphatus/libcaesium).
|
||||
<p align="center">
|
||||
<img alt="demo" src="https://github.com/user-attachments/assets/675d9a49-55cb-42d7-b435-de39b6917315">
|
||||
</p>
|
||||
|
||||
## Development
|
||||
## Table of Contents
|
||||
|
||||
### Requirements
|
||||
- [Features](#features)
|
||||
- [Getting Started](#getting-started)
|
||||
- [Binaries](#binaries)
|
||||
- [Installation from Source](#installation-from-source)
|
||||
- [Usage](#usage)
|
||||
- [Examples](#examples)
|
||||
- [Development](#development)
|
||||
- [Requirements](#requirements)
|
||||
- [Build](#build)
|
||||
|
||||
* [Rust](https://www.rust-lang.org/tools/install) >= 1.79.0
|
||||
## Features
|
||||
|
||||
### Build
|
||||
- Quality-based lossy compression
|
||||
- Lossless compression - the very same image is returned
|
||||
- Maximum size compression - the image is compressed to a specific size
|
||||
- Resize images
|
||||
- Convert to different formats
|
||||
- EXIF metadata preservation
|
||||
- Recursive directory compression
|
||||
- Folder structure preservation
|
||||
- File timestamp preservation
|
||||
- Custom suffix for output files
|
||||
- Fast and customizable multithreaded processing
|
||||
|
||||
`cargo build --release`
|
||||
### Supported formats
|
||||
|
||||
| Format | Lossy | Lossless |
|
||||
|----------|-------|----------|
|
||||
| **JPEG** | ✅ | ✅ |
|
||||
| **PNG** | ✅ | ✅ |
|
||||
| **WebP** | ✅ | ✅ |
|
||||
| **TIFF** | ❌ | ✅ |
|
||||
|
||||
## Getting started
|
||||
|
||||
### Binaries
|
||||
|
||||
You can download the latest binaries from the [releases page](https://github.com/Lymphatus/caesium-clt/releases).
|
||||
Supported platforms are:
|
||||
|
||||
- Windows (x86_64)
|
||||
- macOS (x86_64/aarch64)
|
||||
- Linux (x86_64/aarch64)
|
||||
|
||||
### Installation from source
|
||||
|
||||
If you have Rust installed, you can install the tool using Cargo:
|
||||
|
||||
```bash
|
||||
cargo install --git https://github.com/Lymphatus/caesium-clt caesiumclt
|
||||
```
|
||||
|
||||
If you instead want to build the tool refer to the [Development](#development) section.
|
||||
|
||||
## Usage
|
||||
|
||||
See full usage docs [here](docs/USAGE.md).
|
||||
For a full list of all flags and options refer to the [full docs](docs/USAGE.md).
|
||||
|
||||
### Examples
|
||||
|
||||
|
@ -36,10 +89,10 @@ $ caesiumclt -q 80 -o ~/output/ ~/image.jpg
|
|||
```
|
||||
|
||||
Losslessly compress ```image1.jpg```, located in the ```home``` directory, into a folder called ```output``` and keeps
|
||||
EXIF metadata
|
||||
EXIF metadata and original file date information
|
||||
|
||||
```
|
||||
$ caesiumclt --lossless -e -o ~/output/ ~/image.jpg
|
||||
$ caesiumclt --lossless -e --keep-dates -o ~/output/ ~/image.jpg
|
||||
```
|
||||
|
||||
Losslessly compress ```Pictures``` folder and subfolders, located in the ```home``` directory, into a folder called
|
||||
|
@ -55,3 +108,14 @@ Losslessly compress ```Pictures``` folder and subfolders, located in the ```home
|
|||
```
|
||||
$ caesiumclt --lossless -RS -o ~/output/ ~/Pictures
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
### Requirements
|
||||
|
||||
* [Rust](https://www.rust-lang.org/tools/install) >= 1.79.0
|
||||
|
||||
### Build
|
||||
|
||||
`cargo build`
|
||||
|
||||
|
|
Loading…
Reference in New Issue