aseprite-loader 0.4.2

Aseprite file loader
Documentation
# Aseprite Loader

[![Latest Version](https://img.shields.io/crates/v/aseprite-loader.svg)](https://crates.io/crates/aseprite-loader)
[![CI](https://img.shields.io/github/actions/workflow/status/bikeshedder/aseprite-loader/rust.yml?logo=github&label=CI)](https://github.com/bikeshedder/aseprite-loader/actions?query=workflow%3ARust)
![Unsafe forbidden](https://img.shields.io/badge/unsafe-forbidden-success.svg "Unsafe forbidden")
[![Rust 1.70+](https://img.shields.io/badge/rustc-1.70+-lightgray.svg "Rust 1.70+")](https://blog.rust-lang.org/2023/06/01/Rust-1.70.0.html)

This crate implements a zero-copy parser for aseprite files according to the
Aseprite File Format (.ase/.aseprite) Specifications:

<https://github.com/aseprite/aseprite/blob/main/docs/ase-file-specs.md>

## Usage

```rust,ignore
use aseprite_loader::loader::{AsepriteFile, LayerSelection};

let data = std::fs::read("sprite.aseprite")?;
let file = AsepriteFile::load(&data)?;

let (width, height) = file.size();
let mut rgba = vec![0u8; usize::from(width) * usize::from(height) * 4];

file.render_frame(0, &mut rgba, &LayerSelection::Visible)?;
```

## License

Licensed under either of

- Apache License, Version 2.0 ([LICENSE-APACHE]../LICENSE-APACHE or <http://www.apache.org/licenses/LICENSE-2.0)>
- MIT license ([LICENSE-MIT]../LICENSE-MIT or <http://opensource.org/licenses/MIT)>

at your option.