Enum ImageFormat
enum ImageFormat
An enumeration of supported image formats. Not all formats support both encoding and decoding.
Variants
-
Png An Image in PNG Format
-
Jpeg An Image in JPEG Format
-
Gif An Image in GIF Format
-
WebP An Image in WEBP Format
-
Pnm An Image in general PNM Format
-
Tiff An Image in TIFF Format
-
Tga An Image in TGA Format
-
Dds An Image in DDS Format
-
Bmp An Image in BMP Format
-
Ico An Image in ICO Format
-
Hdr An Image in Radiance HDR Format
-
OpenExr An Image in OpenEXR Format
-
Farbfeld An Image in farbfeld Format
-
Avif An Image in AVIF Format
-
Qoi An Image in QOI Format
Implementations
impl ImageFormat
fn from_extension<S>(ext: S) -> Option<Self> where S: AsRef<OsStr>Return the image format specified by a path's file extension.
Example
use ImageFormat; let format = from_extension; assert_eq!;fn from_path<P>(path: P) -> ImageResult<Self> where P: AsRef<Path>Return the image format specified by the path's file extension.
Example
use ImageFormat; let format = from_path?; assert_eq!; # Ok::fn from_mime_type<M>(mime_type: M) -> Option<Self> where M: AsRef<str>Return the image format specified by a MIME type.
Example
use ImageFormat; let format = from_mime_type.unwrap; assert_eq!;fn to_mime_type(self: &Self) -> &'static strReturn the MIME type for this image format or "application/octet-stream" if no MIME type exists for the format.
Some notes on a few of the MIME types:
- The portable anymap format has a separate MIME type for the pixmap, graymap and bitmap formats, but this method returns the general "image/x-portable-anymap" MIME type.
- The Targa format has two common MIME types, "image/x-targa" and "image/x-tga"; this method returns "image/x-targa" for that format.
- The QOI MIME type is still a work in progress. This method returns "image/x-qoi" for that format.
Example
use ImageFormat; let mime_type = Png.to_mime_type; assert_eq!;fn can_read(self: &Self) -> boolReturn if the
ImageFormatcan be decoded by the lib.fn can_write(self: &Self) -> boolReturn if the
ImageFormatcan be encoded by the lib.fn extensions_str(self: Self) -> &'static [&'static str]Return a list of applicable extensions for this format.
All currently recognized image formats specify at least on extension but for future compatibility you should not rely on this fact. The list may be empty if the format has no recognized file representation, for example in case it is used as a purely transient memory format.
The method name
extensionsremains reserved for introducing another method in the future that yields a slice ofOsStrwhich is blocked by several features of const evaluation.fn reading_enabled(self: &Self) -> boolReturn the
ImageFormats which are enabled for reading.fn writing_enabled(self: &Self) -> boolReturn the
ImageFormats which are enabled for writing.fn all() -> impl Iterator<Item = ImageFormat>Return all
ImageFormats
impl Clone for ImageFormat
fn clone(self: &Self) -> ImageFormat
impl Copy for ImageFormat
impl Debug for ImageFormat
fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result
impl Eq for ImageFormat
impl Freeze for ImageFormat
impl Hash for ImageFormat
fn hash<__H: $crate::hash::Hasher>(self: &Self, state: &mut __H)
impl PartialEq for ImageFormat
fn eq(self: &Self, other: &ImageFormat) -> bool
impl RefUnwindSafe for ImageFormat
impl Send for ImageFormat
impl StructuralPartialEq for ImageFormat
impl Sync for ImageFormat
impl Unpin for ImageFormat
impl UnsafeUnpin for ImageFormat
impl UnwindSafe for ImageFormat
impl<T> Any for ImageFormat
fn type_id(self: &Self) -> TypeId
impl<T> Borrow for ImageFormat
fn borrow(self: &Self) -> &T
impl<T> BorrowMut for ImageFormat
fn borrow_mut(self: &mut Self) -> &mut T
impl<T> CloneToUninit for ImageFormat
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)
impl<T> From for ImageFormat
fn from(t: T) -> TReturns the argument unchanged.
impl<T> Pointable for ImageFormat
unsafe fn init(init: <T as Pointable>::Init) -> usizeunsafe fn deref<'a>(ptr: usize) -> &'a Tunsafe fn deref_mut<'a>(ptr: usize) -> &'a mut Tunsafe fn drop(ptr: usize)
impl<T> ToOwned for ImageFormat
fn to_owned(self: &Self) -> Tfn clone_into(self: &Self, target: &mut T)
impl<T, U> Into for ImageFormat
fn into(self: Self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom for ImageFormat
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T, U> TryInto for ImageFormat
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>