Struct PnmDecoder
pub struct PnmDecoder<R> { /* private fields */ }
Available on crate feature
dep_image
only.Expand description
PNM decoder
Implementations§
§impl<R> PnmDecoder<R>where
R: Read,
impl<R> PnmDecoder<R>where
R: Read,
pub fn new(buffered_read: R) -> Result<PnmDecoder<R>, ImageError> ⓘ
pub fn new(buffered_read: R) -> Result<PnmDecoder<R>, ImageError> ⓘ
Create a new decoder that decodes from the stream read
pub fn into_inner(self) -> (R, PnmHeader) ⓘ
pub fn into_inner(self) -> (R, PnmHeader) ⓘ
Extract the reader and header after an image has been read.
§impl<R> PnmDecoder<R>where
R: Read,
impl<R> PnmDecoder<R>where
R: Read,
pub fn subtype(&self) -> PnmSubtype
pub fn subtype(&self) -> PnmSubtype
Get the pnm subtype, depending on the magic constant contained in the header
Trait Implementations§
§impl<R> ImageDecoder for PnmDecoder<R>where
R: Read,
impl<R> ImageDecoder for PnmDecoder<R>where
R: Read,
§fn dimensions(&self) -> (u32, u32) ⓘ
fn dimensions(&self) -> (u32, u32) ⓘ
Returns a tuple containing the width and height of the image
§fn color_type(&self) -> ColorType
fn color_type(&self) -> ColorType
Returns the color type of the image data produced by this decoder
§fn original_color_type(&self) -> ExtendedColorType
fn original_color_type(&self) -> ExtendedColorType
Returns the color type of the image file before decoding
§fn read_image(self, buf: &mut [u8]) -> Result<(), ImageError> ⓘ
fn read_image(self, buf: &mut [u8]) -> Result<(), ImageError> ⓘ
Returns all the bytes in the image. Read more
§fn read_image_boxed(
self: Box<PnmDecoder<R>>,
buf: &mut [u8],
) -> Result<(), ImageError> ⓘ
fn read_image_boxed( self: Box<PnmDecoder<R>>, buf: &mut [u8], ) -> Result<(), ImageError> ⓘ
Use
read_image
instead; this method is an implementation detail needed so the trait can
be object safe. Read more§fn icc_profile(&mut self) -> Result<Option<Vec<u8>>, ImageError> ⓘ
fn icc_profile(&mut self) -> Result<Option<Vec<u8>>, ImageError> ⓘ
Returns the ICC color profile embedded in the image, or
Ok(None)
if the image does not have one. Read more§fn exif_metadata(&mut self) -> Result<Option<Vec<u8>>, ImageError> ⓘ
fn exif_metadata(&mut self) -> Result<Option<Vec<u8>>, ImageError> ⓘ
Returns the raw Exif chunk, if it is present.
A third-party crate such as
kamadak-exif
is required to actually parse it. Read more§fn orientation(&mut self) -> Result<Orientation, ImageError> ⓘ
fn orientation(&mut self) -> Result<Orientation, ImageError> ⓘ
Returns the orientation of the image. Read more
§fn total_bytes(&self) -> u64
fn total_bytes(&self) -> u64
Returns the total number of bytes in the decoded image. Read more
§fn set_limits(&mut self, limits: Limits) -> Result<(), ImageError> ⓘ
fn set_limits(&mut self, limits: Limits) -> Result<(), ImageError> ⓘ
Auto Trait Implementations§
impl<R> Freeze for PnmDecoder<R>where
R: Freeze,
impl<R> RefUnwindSafe for PnmDecoder<R>where
R: RefUnwindSafe,
impl<R> Send for PnmDecoder<R>where
R: Send,
impl<R> Sync for PnmDecoder<R>where
R: Sync,
impl<R> Unpin for PnmDecoder<R>where
R: Unpin,
impl<R> UnwindSafe for PnmDecoder<R>where
R: UnwindSafe,
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
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
The alignment of this type in bytes.
Source§fn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Returns the alignment of this type in bytes.
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
Returns a deterministic hash of the
TypeId
of Self
using a custom hasher.Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Know whether dropping values of this type matters, in compile-time.
Source§fn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Returns the minimum alignment of the type in bytes. Read more
Source§fn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Returns the alignment of the pointed-to value in bytes. Read more
Source§fn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Returns the size of a type in bytes. Read more
Source§fn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Returns the size of the pointed-to value in bytes. Read more
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
Returns
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
Forgets about
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
Available on crate feature
unsafe_layout
only.Returns the value of type
T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
Available on crate feature
unsafe_layout
only.Returns the value of type
T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
Available on crate feature
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more