pub struct Frame { /* private fields */ }
Expand description
An animation frame containing data and metadata produced by Decoder
Getting metadata:
assert_eq!(frame.dimensions(), (400, 400));
assert_eq!(frame.color_mode(), ColorMode::Rgba);
Accessing frame data in raw ColorMode
-encoded bytes:
assert_eq!(frame.data().len(), (400 * 400 * 4));
assert_eq!(frame.data()[0..4], [0, 0, 0, 255]);
If image
feature is enabled, frame can be converted into [image::ImageBuffer
]:
#[cfg(feature = "image")]
let image = frame.into_image().unwrap();
#[cfg(feature = "image")]
assert_eq!(image.dimensions(), (400, 400));
#[cfg(feature = "image")]
assert_eq!(image.height(), 400);
// image.save("frame.png");
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Frame
impl RefUnwindSafe for Frame
impl Send for Frame
impl Sync for Frame
impl Unpin for Frame
impl UnwindSafe for Frame
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more