5 个版本 (3 个破坏性更新)
0.4.1 | 2021 年 3 月 4 日 |
---|---|
0.4.0 | 2021 年 3 月 4 日 |
0.3.0 | 2021 年 2 月 24 日 |
0.2.0 | 2021 年 2 月 20 日 |
0.1.0 | 2021 年 2 月 18 日 |
#459 在 命令行界面
每月 35 次下载
用于 zuk
220KB
210 行
半分
hanbun 是一个用于在终端中绘制半块(▀
和 ▄
)的库,它允许渲染各种图形。
Ferris 使用 examples/image.rs
渲染
安装
将以下行添加到您的 Cargo.toml
文件中
hanbun = "0.4.1"
示例
以下是一个示例,它使用常见的功能,例如创建缓冲区、设置着色半块、打印文本,最后将缓冲区绘制到屏幕上。
use hanbun::{self, Color};
fn main() {
// Let's draw these two kanji on the screen using half blocks!
let lines = [
" W W W W W",
" W W W W W",
" W W W",
" WWWWWWWWW W W",
" W W W",
" W WWWWWWWWW",
"WWWWWWWWWWW W W",
" W W W",
" W W W",
" W W W W",
" W WW W",
];
let width = lines.iter().map(|line| line.len()).max().unwrap();
let height = lines.len() / 2 + 2;
// Here we store the state of each cell
let mut buffer = hanbun::Buffer::new(width, height, ' ');
let mut x = 0;
let mut y = 0;
for line in &lines {
for char in line.chars() {
// We set a colored half block for each W we find
if char == 'W' {
buffer.color(x, y, Color::Green);
}
x += 1;
}
y += 1;
x = 0;
}
// Add some centered text to the bottom
let text = "hanbun";
buffer.print(width / 2 - text.len() / 2, height + 5, text);
// Actually display what we've drawn
buffer.draw();
}
结果
结果可能因终端而异。
请务必查看其他示例!您现在可以运行类似计算器的示例
git clone https://github.com/r00ster91/hanbun.git
cd hanbun
cargo run --example calculator
脚注
这是我第一个 Rust 库,让我积累了一些 crate 开发经验。目前,该库可用,但如果您进行重复绘制,可能会遇到撕裂。另一方面,您会得到旧显示器的那种怀旧感觉。
依赖项
~2MB
~36K SLoC