1 unstable release
0.7.1 | Dec 8, 2024 |
---|
#46 in Data formats
22 downloads per month
62KB
1.5K
SLoC
bdf
BDF font handler
This crate allows you to read and write BDF fonts in Rust.
Example
This example will draw a given glyph in your terminal using the given font.
use std::char;
use std::env;
use std::process::exit;
let font = bdf::open(env::args().nth(1).expect("missing font file")).unwrap();
let codepoint = char::from_u32(
env::args()
.nth(2)
.expect("missing codepoint")
.parse()
.unwrap(),
)
.expect("invalid codepoint");
let glyph = font.glyphs().get(&codepoint).unwrap_or_else(|| exit(1));
for y in 0..glyph.height() {
for x in 0..glyph.width() {
if glyph.get(x, y) {
print!("██");
} else {
print!(" ");
}
}
print!("\n");
}
lib.rs
:
BDF font handler
This crate allows you to read and write BDF fonts in Rust.
Example
This example will draw a given glyph in your terminal using the given font.
use std::char;
use std::env;
use std::process::exit;
let font = bdf::open(env::args().nth(1).expect("missing font file")).unwrap();
let codepoint = char::from_u32(
env::args()
.nth(2)
.expect("missing codepoint")
.parse()
.unwrap(),
)
.expect("invalid codepoint");
let glyph = font.glyphs().get(&codepoint).unwrap_or_else(|| exit(1));
for y in 0..glyph.height() {
for x in 0..glyph.width() {
if glyph.get(x, y) {
print!("██");
} else {
print!(" ");
}
}
print!("\n");
}
Dependencies
~0.4–0.8MB
~18K SLoC