#字体 #终端

terminal-fonts

适用于终端显示的大字体。每个字符都是由许多点组成的方块。

1 个不稳定版本

0.1.0 2020年5月28日

#10 in #字体

每月 50 次下载
用于 mints

MIT 许可证

26KB
630

终端字体

适用于终端显示的大字体。每个字符都是由许多点组成的方块。

字体数据来自 Arcade,字体版权属于原作者。

用法

直接生成方块字符串

use terminal_fonts::{to_block_string};

fn main() {
    println!("{}", to_block_string("05:30:12 AM"))
}
   ███   ██████           ██████   ███              ██    █████            ███   ██   ██
  █  ██  ██        ██        ██   █  ██    ██      ███   ██   ██          ██ ██  ███ ███
 ██   ██ ██████    ██       ██   ██   ██   ██       ██       ███         ██   ██ ███████
 ██   ██      ██           ████  ██   ██            ██     ████          ██   ██ ███████
 ██   ██      ██              ██ ██   ██            ██    ████           ███████ ██ █ ██
  ██  █  ██   ██   ██    ██   ██  ██  █    ██       ██   ███             ██   ██ ██   ██
   ███    █████    ██     █████    ███     ██     ██████ ███████         ██   ██ ██   ██

生成方块并操作它们

use terminal_fonts::{map_block, to_block, concat_blocks, to_string};

fn red(v: &str) -> String {
    format!("{}{}{}", "\u{001b}[31m", v, "\u{001b}[0m")
}

fn yellow(v: &str) -> String {
    format!("{}{}{}", "\u{001b}[33m", v, "\u{001b}[0m")
}

fn blue(v: &str) -> String {
    format!("{}{}{}", "\u{001b}[34m", v, "\u{001b}[0m")
}


fn main() {
    let hour_block = map_block(&to_block("05"), red);
    let minute_block = map_block(&to_block("30"), yellow);
    let second_block = map_block(&to_block("12"), blue);
    let sep_block = to_block(":");

    let result = to_string(&concat_blocks(&vec![
        &hour_block,
        &sep_block,
        &minute_block,
        &sep_block,
        &second_block,
    ]));
    println!("{}", result)
}

依赖项

~11KB