bhcli

A TUI for chatting on LE PHP Chats (onion)
git clone https://git.dasho.dev/n0tr1v/bhcli.git
Log | Files | Refs | README

commit fc4944ffc0622e53e944036bef657ed719646d7a
parent 53308f6fb956ee8d01ae73e094177afed62c0ff3
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Sat,  1 Apr 2023 01:04:57 -0700

simplify code

Diffstat:
Msrc/lechatphp/mod.rs | 12+++++-------
1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/src/lechatphp/mod.rs b/src/lechatphp/mod.rs @@ -112,8 +112,7 @@ fn solve_difficulty2(img: &DynamicImage) -> Option<String> { for i in 0..NB_CHARS { let sub_img = img.crop_imm(LEFT_PADDING + ((LETTER_WIDTH +1)*i), TOP_PADDING, LETTER_WIDTH, LETTER_HEIGHT); for c in ALPHABET1.chars() { - let good_letter_img = get_letter_img(c); - if img_contains_letter(&sub_img, &good_letter_img) { + if img_contains_letter(&sub_img, c) { answer.push(c); break; } @@ -209,16 +208,14 @@ fn find_letters(img: &DynamicImage) -> Result<HashSet<Letter>, CaptchaErr> { continue; } 'alphabet_loop: for c in ALPHABET1.chars() { - let good_letter_img = get_letter_img(c); - if !img_contains_letter(&letter_img, &good_letter_img) { + if !img_contains_letter(&letter_img, c) { continue; } // "w" fits in "W". So if we find "W" 1 px bellow, discard "w" for (a, b, x, y) in vec![('w', 'W', x, y+1), ('k', 'K', x+1, y+1)] { if c == a { - let capital_w_img = get_letter_img(b); let one_px_down_img = img.crop_imm(x, y, LETTER_WIDTH, LETTER_HEIGHT); - if img_contains_letter(&one_px_down_img, &capital_w_img) { + if img_contains_letter(&one_px_down_img, b) { continue 'alphabet_loop; } } @@ -265,7 +262,8 @@ impl From<Point> for bresenham::Point { } // give an image and a valid letter image, return either or not the letter is in that image. -fn img_contains_letter(img: &DynamicImage, letter_img: &DynamicImage) -> bool { +fn img_contains_letter(img: &DynamicImage, c: char) -> bool { + let letter_img = get_letter_img(c); if letter_img.dimensions() != img.dimensions() { return false; }