diff options
| author | Laurenz <laurmaedje@gmail.com> | 2021-05-28 12:44:44 +0200 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2021-05-28 12:46:43 +0200 |
| commit | 0bfee5b7772338fd39bbf708d3e31ea7bcec859b (patch) | |
| tree | 5f76c7d0529d6c089e8e3383356692dfce09cffb /src/env/image.rs | |
| parent | eabf28f08187bd9a10bbadbbaf9617e2bc1949aa (diff) | |
Refactored loading and cache architecture
Diffstat (limited to 'src/env/image.rs')
| -rw-r--r-- | src/env/image.rs | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/env/image.rs b/src/env/image.rs deleted file mode 100644 index 365ff312..00000000 --- a/src/env/image.rs +++ /dev/null @@ -1,47 +0,0 @@ -use std::fmt::{self, Debug, Formatter}; -use std::io::Cursor; - -use image::io::Reader as ImageReader; -use image::{DynamicImage, GenericImageView, ImageFormat}; - -/// A loaded image. -pub struct Image { - /// The original format the image was encoded in. - pub format: ImageFormat, - /// The decoded image. - pub buf: DynamicImage, -} - -impl Image { - /// Parse an image from raw data in a supported format. - /// - /// The image format is determined automatically. - pub fn parse(data: &[u8]) -> Option<Self> { - let cursor = Cursor::new(data); - let reader = ImageReader::new(cursor).with_guessed_format().ok()?; - let format = reader.format()?; - let buf = reader.decode().ok()?; - Some(Self { format, buf }) - } - - /// The width of the image. - pub fn width(&self) -> u32 { - self.buf.width() - } - - /// The height of the image. - pub fn height(&self) -> u32 { - self.buf.height() - } -} - -impl Debug for Image { - fn fmt(&self, f: &mut Formatter) -> fmt::Result { - f.debug_struct("Image") - .field("format", &self.format) - .field("color", &self.buf.color()) - .field("width", &self.width()) - .field("height", &self.height()) - .finish() - } -} |
