https://github.com/bschwind/png-decoder
A pure-Rust, no_std compatible PNG decoder
https://github.com/bschwind/png-decoder
Last synced: 8 months ago
JSON representation
A pure-Rust, no_std compatible PNG decoder
- Host: GitHub
- URL: https://github.com/bschwind/png-decoder
- Owner: bschwind
- License: other
- Created: 2020-12-02T11:42:51.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-10-09T02:34:04.000Z (over 3 years ago)
- Last Synced: 2025-08-13T18:16:36.057Z (10 months ago)
- Language: Rust
- Homepage:
- Size: 1.52 MB
- Stars: 45
- Watchers: 4
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# png-decoder
A pure-Rust, no_std compatible PNG decoder.
See [examples/basic.rs](examples/basic.rs) for basic usage. The `decode()` function returns a PNG header and associated byte data, represented as RGBA (8 bits per channel).
## Dependencies
- cargo
- rustc
## Build
```
$ cargo build --release
```
## Testing
```
$ cargo test
```
## Code Format
The formatting options currently use nightly-only options.
```
$ cargo +nightly fmt
```
## Code Linting
```
$ cargo clippy
```
## Code Fuzzing
Fuzzing requires a nightly toolchain. Fuzzing for this project is currently confirmed to work with:
```
+nightly-2020-10-07
```
## Running
```
cargo install cargo-fuzz
cargo +nightly-2020-10-07 fuzz run png_decoder_fuzzer
```