X-Git-Url: https://codewiz.org/gitweb?p=mandelwow.git;a=blobdiff_plain;f=screenshot.rs;fp=screenshot.rs;h=19f2b1329c3f1b26a760abdbb695d1c5390873a0;hp=0000000000000000000000000000000000000000;hb=9ae471dda58c74e83c7080f7ea527105e063aef3;hpb=29b275596efed3b3064072483aa6d8c4cba1e3d4 diff --git a/screenshot.rs b/screenshot.rs new file mode 100644 index 0000000..19f2b13 --- /dev/null +++ b/screenshot.rs @@ -0,0 +1,13 @@ +#[cfg(feature = "image")] +pub fn take_screenshot(display : &glium::Display) { + let image: glium::texture::RawImage2d<'_, u8> = display.read_front_buffer().unwrap(); + let image = image::ImageBuffer::from_raw(image.width, image.height, image.data.into_owned()).unwrap(); + let image = image::DynamicImage::ImageRgba8(image).flipv().to_rgb(); + let image = image::DynamicImage::ImageRgb8(image); + let mut output = std::fs::File::create(&std::path::Path::new("screenshot.png")).unwrap(); + image.write_to(&mut output, image::ImageFormat::PNG).unwrap(); +} + +#[cfg(not(feature = "image"))] +pub fn take_screenshot(_ : &glium::Display) { +}