Trait image::ImageDecoder
[−]
[src]
pub trait ImageDecoder: Sized { fn dimensions(&mut self) -> ImageResult<(u32, u32)>; fn colortype(&mut self) -> ImageResult<ColorType>; fn row_len(&mut self) -> ImageResult<usize>; fn read_scanline(&mut self, buf: &mut [u8]) -> ImageResult<u32>; fn read_image(&mut self) -> ImageResult<DecodingResult>; fn is_animated(&mut self) -> ImageResult<bool> { ... } fn into_frames(self) -> ImageResult<Frames> { ... } fn load_rect(&mut self, x: u32, y: u32, length: u32, width: u32) -> ImageResult<Vec<u8>> { ... } }
The trait that all decoders implement
Required Methods
fn dimensions(&mut self) -> ImageResult<(u32, u32)>
Returns a tuple containing the width and height of the image
fn colortype(&mut self) -> ImageResult<ColorType>
Returns the color type of the image e.g. RGB(8) (8bit RGB)
fn row_len(&mut self) -> ImageResult<usize>
Returns the length in bytes of one decoded row of the image
fn read_scanline(&mut self, buf: &mut [u8]) -> ImageResult<u32>
Reads one row from the image into buf
and returns the row index
fn read_image(&mut self) -> ImageResult<DecodingResult>
Decodes the entire image and return it as a Vector
Provided Methods
fn is_animated(&mut self) -> ImageResult<bool>
Returns true if the image is animated
fn into_frames(self) -> ImageResult<Frames>
Returns the frames of the image
If the image is not animated it returns a single frame
fn load_rect(&mut self, x: u32, y: u32, length: u32, width: u32) -> ImageResult<Vec<u8>>
Decodes a specific region of the image, represented by the rectangle
starting from x
and y
and having length
and width
Implementors
impl<R: Read> ImageDecoder for WebpDecoder<R>
impl<R: Read> ImageDecoder for PNGDecoder<R>
impl<R: Read + Seek> ImageDecoder for ICODecoder<R>
impl<R: Read> ImageDecoder for JPEGDecoder<R>
impl<R: Read> ImageDecoder for Decoder<R>
impl<R: Read + Seek> ImageDecoder for TIFFDecoder<R>
impl<R: Read + Seek> ImageDecoder for TGADecoder<R>
impl<R: Read + Seek> ImageDecoder for BMPDecoder<R>