projects
/
litoprism.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f31d649
)
/pgen/0 now resizes image as /gen/0 does
author
MegaBrutal
<code+git@megabrutal.com>
Thu, 14 Jul 2022 21:30:45 +0000
(23:30 +0200)
committer
MegaBrutal
<code+git@megabrutal.com>
Thu, 14 Jul 2022 21:30:45 +0000
(23:30 +0200)
src/main.rs
patch
|
blob
|
history
diff --git
a/src/main.rs
b/src/main.rs
index 7340b0bc02a8390955d5451b6e50f48c43495d67..32202b8e372343948857716eb68b750ea19e8b6a 100644
(file)
--- a/
src/main.rs
+++ b/
src/main.rs
@@
-142,7
+142,6
@@
fn make_png(dim_x: u32, dim_y: u32, scale: u32, data: &mut dyn Iterator<Item = u
async fn img_gen0(req: HttpRequest) -> Result<impl Responder> {
let data = req.uri().path().split("/").skip(3).next().unwrap();
let cursor = make_png(32, 32, 16, percent_decode_str(&data).into_iter().borrow_mut())?;
async fn img_gen0(req: HttpRequest) -> Result<impl Responder> {
let data = req.uri().path().split("/").skip(3).next().unwrap();
let cursor = make_png(32, 32, 16, percent_decode_str(&data).into_iter().borrow_mut())?;
- println!("{:?}", &cursor);
Ok(HttpResponse::build(StatusCode::OK)
.content_type("image/png")
.body(cursor.into_inner()))
Ok(HttpResponse::build(StatusCode::OK)
.content_type("image/png")
.body(cursor.into_inner()))
@@
-162,15
+161,17
@@
async fn img_gen1(req: HttpRequest, path: web::Path<(u32, u32, u32)>) -> Result<
async fn img_pgen0(req: HttpRequest, canvas0: web::Data<Arc<Mutex<Option<Canvas>>>>) -> Result<impl Responder> {
let data = req.uri().path().split("/").skip(3).next().unwrap();
let mut cursor = Cursor::new(Vec::new());
async fn img_pgen0(req: HttpRequest, canvas0: web::Data<Arc<Mutex<Option<Canvas>>>>) -> Result<impl Responder> {
let data = req.uri().path().split("/").skip(3).next().unwrap();
let mut cursor = Cursor::new(Vec::new());
- let tdim_x = 32;
- let tdim_y = 32;
- {
+ let scale = 16;
+ let tdim_x = 32 * scale;
+ let tdim_y = 32 * scale;
+ let img: RgbImage = {
let mut canvas_option = &mut *canvas0.lock().unwrap();
let canvas = canvas_option.take();
let canvas = rgb_encode_to_canvas(canvas.expect("Canvas doesn't exist!"), percent_decode_str(&data).into_iter().borrow_mut())?;
let mut canvas_option = &mut *canvas0.lock().unwrap();
let canvas = canvas_option.take();
let canvas = rgb_encode_to_canvas(canvas.expect("Canvas doesn't exist!"), percent_decode_str(&data).into_iter().borrow_mut())?;
- to_imageresult(write_buffer_with_format(&mut cursor, &canvas.img, tdim_x, tdim_y, ColorType::Rgb8, Png))?;
- canvas_option.insert(canvas);
- }
+ canvas_option.insert(canvas).img.clone()
+ };
+ let img = resize(&img, tdim_x, tdim_y, FilterType::Nearest);
+ to_imageresult(write_buffer_with_format(&mut cursor, &img, tdim_x, tdim_y, ColorType::Rgb8, Png))?;
Ok(HttpResponse::build(StatusCode::OK)
.content_type("image/png")
.body(cursor.into_inner()))
Ok(HttpResponse::build(StatusCode::OK)
.content_type("image/png")
.body(cursor.into_inner()))