From e0f043bb778e6e3e08627700a0c4bce3a76199fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Czy=C5=BC?= Date: Sun, 7 Jul 2024 14:42:58 +0200 Subject: [PATCH] more params --- src/libs/args.rs | 8 +++++++- src/libs/ascii.rs | 4 ++++ src/main.rs | 18 ++++++++++-------- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/src/libs/args.rs b/src/libs/args.rs index 1461103..84b6a0f 100644 --- a/src/libs/args.rs +++ b/src/libs/args.rs @@ -20,4 +20,10 @@ pub struct Args { #[arg(long, default_value_t = 2)] pub pixel: usize, -} \ No newline at end of file + + #[arg(long, default_value_t = false)] + pub noresize: bool, + + #[arg(long, default_value_t = false)] + pub matrix: bool, +} diff --git a/src/libs/ascii.rs b/src/libs/ascii.rs index f6ccc37..00f101e 100644 --- a/src/libs/ascii.rs +++ b/src/libs/ascii.rs @@ -55,6 +55,10 @@ pub fn to_ascii(img: &image::DynamicImage, args: &args::Args) -> String { char_pixel = select_dominant_color((red, green, blue), char_pixel); } + if args.matrix { + char_pixel = char_pixel.bright_green().to_string(); + } + ascii_img.push_str(&char_pixel); } ascii_img.push('\n'); diff --git a/src/main.rs b/src/main.rs index ec6b031..0f2a46a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3,18 +3,20 @@ mod libs; fn main() { println!("ASCII Generator\n----------------"); - + let args = libs::args::Args::parse(); - let img = libs::image::load_image(&args.image); + let mut img = libs::image::load_image(&args.image); libs::image::print_size(&img); - let resized_img = libs::image::resize_image(&img, args.width, args.height); - println!("Image resized"); - libs::image::print_size(&resized_img); + if !args.noresize { + img = libs::image::resize_image(&img, args.width, args.height); + println!("Image resized"); + libs::image::print_size(&img); + } - let ascii_img = libs::ascii::to_ascii(&resized_img, &args); + let ascii_img = libs::ascii::to_ascii(&img, &args); println!("ASCII image created"); - + println!("{ascii_img}"); -} \ No newline at end of file +}