12 releases
0.5.0-rc2 | Jul 21, 2024 |
---|---|
0.5.0-rc0 | Apr 7, 2024 |
0.4.12 | Jan 15, 2024 |
0.4.11 | Dec 2, 2023 |
0.2.12 | Mar 29, 2023 |
#139 in Images
718,758 downloads per month
Used in 292 crates
(20 directly)
94KB
1.5K
SLoC
Zune core
Core primitives necessary for image manipulations
This crate contains small set of primitives
necessary for image manipulations which are shared among most zune-
family
of decoders and encoders.
Items present
Currently,it contains.
- Colorspace definitions
- Bit depth definitions.
- Decoder and encoder options
lib.rs
:
Core routines shared by all libraries
This crate provides a set of core routines shared
by the decoders and encoders under zune
umbrella
It currently contains
- A bytestream reader and writer with endian aware reads and writes
- Colorspace and bit depth information shared by images
- Image decoder and encoder options
- A simple enum type to hold image decoding results.
This library is #[no_std]
with alloc
feature needed for defining Vec
which we need for storing decoded bytes.
Features
-
no_std
: Enables#[no_std]
compilation support. -
serde
: Enables serializing of some of the data structures present in the crate
Input/Output
zune-image supports many different input and output devices. For input readers
we can read anything that implements BufRead
+ Seek
and provide an optimized routine for
handling in memory buffers by using ZCursor
.
For output, we support anything that implements Write
trait, this includes files, standard io streams
network sockets, etc
In a no_std
environment. We can write to in memory buffers &mut [u8]
and &mut Vec<u8>
If you have an in memory buffer, use ZCursor
,
it's optimized for in memory buffers.
Dependencies
~180KB