| Crates.io | tinygif |
| lib.rs | tinygif |
| version | 0.0.4 |
| created_at | 2023-06-07 12:27:10.865178+00 |
| updated_at | 2023-07-07 14:39:54.522659+00 |
| description | No-std, high memory footprint GIF image loader |
| homepage | https://github.com/andelf/tinygif |
| repository | https://github.com/andelf/tinygif |
| max_upload_size | |
| id | 884728 |
| size | 359,862 |
A tiny gif decoder written in no_std Rust.
This crate requires about 20kB of memory to decode a gif.
let image = tinygif::Gif::<Rgb565>::from_slice(include_bytes!("../Ferris-240x240.gif")).unwrap();
loop {
for frame in image.frames() {
info!("frame {:?}", frame);
frame.draw(&mut display).unwrap();
let delay_ms = frame.delay_centis * 10;
info!("delay {}", delay_ms);
// Delay here
// Timer::after(Duration::from_millis(delay_ms as u64)).await;
// Or, draw at given offset
// use embedded_graphics::prelude::DrawTargetExt;
// frame.draw(&mut display.translated(Point::new(30, 50))).unwrap();
}
}
MIT or Apache-2.0 at your option.
Animated Ferris in Action Happy as a Rustacean at Rust Fest Berlin 2016 (www.rustfest.eu)