3 releases (breaking)

0.5.0-rc0 Apr 7, 2024
0.4.0 Nov 16, 2023
0.2.0 Apr 30, 2023

#51 in #image-encoding

Download history 13/week @ 2024-10-05 1/week @ 2024-10-19 268/week @ 2024-10-26 218/week @ 2024-11-02 286/week @ 2024-11-09 168/week @ 2024-11-16 45/week @ 2024-11-23 32/week @ 2024-11-30 137/week @ 2024-12-07 98/week @ 2024-12-14 49/week @ 2024-12-21 28/week @ 2024-12-28 42/week @ 2025-01-04 84/week @ 2025-01-11 75/week @ 2025-01-18

234 downloads per month
Used in zune-image

MIT OR Apache-2.0 OR Zlib

115KB
1.5K SLoC

Zune-farbfeld

Farbfeld decoding and encoding support

Usage

Add zune-farbfeld to your Cargo.toml

zune-farbfeld = "[LATEST]"

You can then use FarbfeldDecoder to decode images and FarbfeldEncoder to encode images

Endianness

Where endianness matters, the library either takes or uses native endian


lib.rs:

farbfeld is a lossless image format which is easy to parse, pipe and compress. It has the following format:

╔════════╤═════════════════════════════════════════════════════════╗
║ Bytes  │ Description                                             ║
╠════════╪═════════════════════════════════════════════════════════╣
║ 8      │ "farbfeld" magic value                                  ║
╟────────┼─────────────────────────────────────────────────────────╢
║ 4      │ 32-Bit BE unsigned integer (width)                      ║
╟────────┼─────────────────────────────────────────────────────────╢
║ 4      │ 32-Bit BE unsigned integer (height)                     ║
╟────────┼─────────────────────────────────────────────────────────╢
║ [2222] │ 4x16-Bit BE unsigned integers [RGBA] / pixel, row-major ║
╚════════╧═════════════════════════════════════════════════════════╝
The RGB-data should be sRGB for best interoperability and not alpha-premultiplied.

Dependencies