Trait cosmic::iced::advanced::graphics::image::image_rs::ImageDecoderRect

source ·
pub trait ImageDecoderRect<'a>: Sized + ImageDecoder<'a> {
    // Required method
    fn read_rect_with_progress<F>(
        &mut self,
        x: u32,
        y: u32,
        width: u32,
        height: u32,
        buf: &mut [u8],
        progress_callback: F,
    ) -> Result<(), ImageError>
       where F: Fn(Progress);

    // Provided method
    fn read_rect(
        &mut self,
        x: u32,
        y: u32,
        width: u32,
        height: u32,
        buf: &mut [u8],
    ) -> Result<(), ImageError> { ... }
}
Expand description

Specialized image decoding not be supported by all formats

Required Methods§

source

fn read_rect_with_progress<F>( &mut self, x: u32, y: u32, width: u32, height: u32, buf: &mut [u8], progress_callback: F, ) -> Result<(), ImageError>
where F: Fn(Progress),

👎Deprecated: Use read_image instead. See https://github.com/image-rs/image/issues/1989

Decode a rectangular section of the image, periodically reporting progress.

The output buffer will be filled with fields specified by ImageDecoder::color_type(), in that order, each field represented in native-endian.

The progress callback will be called at least once at the start and the end of decoding, implementations are encouraged to call this more often, with a frequency meaningful for display to the end-user.

This function will panic if the output buffer isn’t at least color_type().bytes_per_pixel() * color_type().channel_count() * width * height bytes long.

Provided Methods§

source

fn read_rect( &mut self, x: u32, y: u32, width: u32, height: u32, buf: &mut [u8], ) -> Result<(), ImageError>

Decode a rectangular section of the image; see read_rect_with_progress().

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'a, R> ImageDecoderRect<'a> for BmpDecoder<R>
where R: 'a + Read + Seek,

source§

impl<'a, R> ImageDecoderRect<'a> for DxtDecoder<R>
where R: 'a + Read + Seek,

source§

impl<'a, R> ImageDecoderRect<'a> for FarbfeldDecoder<R>
where R: 'a + Read + Seek,

source§

impl<'a, R> ImageDecoderRect<'a> for HdrAdapter<R>
where R: 'a + BufRead + Seek,