Struct native_windows_gui::ImageDecoder
source · [−]pub struct ImageDecoder {
pub factory: *mut IWICImagingFactory,
}
Expand description
A image decoder. Can load an extended number of image file format from a filename, from a file handle, or from a stream.
ImageDecoder do not take any parameter to build, but it still provides a builder API to match the other component of NWG. You can also use “ImageDecoder::new” to avoid the builder API.
There’s not much reason to have more than 1 image decoder per application.
Images loaded from a decoder cannot be used as-is by an image frame. They must first be converted to a bitmap resource.
use native_windows_gui as nwg;
fn open_image(decoder: &nwg::ImageDecoder) -> Result<nwg::ImageData, nwg::NwgError> {
decoder
.from_filename("corn.png")?
.frame(0)
}
use native_windows_gui as nwg;
fn build_image_decode(decode: &mut nwg::ImageDecoder) -> Result<(), nwg::NwgError> {
nwg::ImageDecoder::builder()
.build(decode)
}
Fields
factory: *mut IWICImagingFactory
Implementations
sourceimpl ImageDecoder
impl ImageDecoder
pub fn new() -> Result<ImageDecoder, NwgError>
pub fn builder() -> ImageDecoderBuilder
sourcepub fn from_filename<'a>(&self, path: &'a str) -> Result<ImageSource, NwgError>
pub fn from_filename<'a>(&self, path: &'a str) -> Result<ImageSource, NwgError>
Try to read an image from a file path. The file type can be any of the native WIC codecs (https://docs.microsoft.com/en-us/windows/win32/wic/native-wic-codecs)
- If there is an error during the decoding, returns a NwgError.
- If the image decoder was not initialized, this method panics
This method returns a ImageSource object
sourcepub fn from_stream(&self, stream: &[u8]) -> Result<ImageSource, NwgError>
pub fn from_stream(&self, stream: &[u8]) -> Result<ImageSource, NwgError>
Build an image from a stream of data. The file type can be any of the native WIC codecs (https://docs.microsoft.com/en-us/windows/win32/wic/native-wic-codecs)
- If there is an error during the decoding, returns a NwgError.
- If the image decoder was not initialized, this method panics
This method copies the bytes and returns a ImageSource object
Trait Implementations
sourceimpl Default for ImageDecoder
impl Default for ImageDecoder
sourcefn default() -> ImageDecoder
fn default() -> ImageDecoder
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for ImageDecoder
impl !Send for ImageDecoder
impl !Sync for ImageDecoder
impl Unpin for ImageDecoder
impl UnwindSafe for ImageDecoder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more