1 个不稳定版本
0.1.0 | 2020年5月28日 |
---|
#10 in #字体
每月 50 次下载
用于 mints
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