From: MegaBrutal Date: Sat, 25 Jun 2022 22:15:00 +0000 (+0200) Subject: Make_png now accepts processed data X-Git-Url: http://git.megabrutal.com/?p=litoprism.git;a=commitdiff_plain;h=4cfc79b87af18756416ce40e52a3f09cfb85a119 Make_png now accepts processed data --- diff --git a/src/main.rs b/src/main.rs index faa1ad8..7b0f6b5 100644 --- a/src/main.rs +++ b/src/main.rs @@ -48,7 +48,6 @@ impl + Zero> Iterator for ToRgbIter<'_, T> { if let Some(r) = self.iter.next() { let g = self.iter.next().unwrap_or(T::zero()); let b = self.iter.next().unwrap_or(T::zero()); - println!("{} {} {}", r.as_(), g.as_(), b.as_()); Some(Rgb([r.as_(), g.as_(), b.as_()])) } else { @@ -70,11 +69,11 @@ async fn greet(name: web::Path, req: HttpRequest) -> impl Responder { format!("Hello {name}!") } -fn make_png(dim_x: u32, dim_y: u32, scale: u32, data: &str) -> Result>, ImageError> { +fn make_png(dim_x: u32, dim_y: u32, scale: u32, data: &mut dyn Iterator) -> Result>, ImageError> { let mut img: RgbImage = ImageBuffer::new(dim_x, dim_y); let mut pixels = img.pixels_mut(); - for sp in ToRgbIter::new(percent_decode_str(&data).into_iter().borrow_mut()) { + for sp in ToRgbIter::new(data) { let mut dp = pixels.next().unwrap(); println!("{:?}", sp); dp.0 = sp.0; @@ -91,7 +90,7 @@ fn make_png(dim_x: u32, dim_y: u32, scale: u32, data: &str) -> Result Result { let data = req.uri().path().split("/").skip(3).next().unwrap(); - let cursor = make_png(32, 32, 16, &data)?; + let cursor = make_png(32, 32, 16, percent_decode_str(&data).into_iter().borrow_mut())?; Ok(HttpResponse::build(StatusCode::OK) .content_type("image/png") .body(cursor.into_inner()))