This is a work in progress library to create, process, read and write different image formats with Zig programming language.
This project assume current Zig master (0.5.0+a6e288d5f).
Build tests
zig build test
How to add to your project:
- Clone this repository or add as a submodule
- Add to your
build.zig
exe.addPackagePath("zigimg", "zigimg/zigimg.zig");
| Image Format | Read | Write |
|---|---|---|
| ANIM | ❌ | ❌ |
| BMP | ✔️ (Partial) | ❌ |
| GIF | ❌ | ❌ |
| ICO | ❌ | ❌ |
| IILBM | ❌ | ❌ |
| JPEG | ❌ | ❌ |
| PAM | ❌ | ❌ |
| PBM | ✔️ | ❌ |
| PCX | ✔️ | ❌ |
| PGM | ✔️ (Partial) | ❌ |
| PNG | ❌ | ❌ |
| PPM | ✔️ (Partial) | ❌ |
| TGA | ❌ | ❌ |
| TIFF | ❌ | ❌ |
| XBM | ❌ | ❌ |
| XPM | ❌ | ❌ |
- version 4 BMP
- version 5 BMP
- 24-bit RGB
- 32 RGBA
- Doesn't support any compression
- Everything is supported
- Support monochrome, 4 color, 16 color and 256 color indexed images
- Support 24-bit RGB images
- Support 8-bit grayscale images
- Missing 16-bit grayscale support for now
- Support 24-bit RGB (8-bit per channel)
- Missing 48-bit RGB (16-bit per channel)