1 stable release

Uses new Rust 2024

new 1.0.0 Apr 10, 2025

#26 in #ascii-art

33 downloads per month

GPL-3.0-or-later

9KB
194 lines

artify

Provides the ascii template interface.

use artify::AsciiArt;
use owo_colors::DynColors;
use owo_colors::AnsiColors;

const ASCII: &str = r#"
{2}            .:--::////::--.`
{1}        `/yNMMNho{2}////////////:.
{1}      `+NMMMMMMMMmy{2}/////////////:`
{0}    `-:::{1}ohNMMMMMMMNy{2}/////////////:`
{0}   .::::::::{1}odMMMMMMMNy{2}/////////////-
{0}  -:::::::::::{1}/hMMMMMMMmo{2}////////////-
{0} .::::::::::::::{1}oMMMMMMMMh{2}////////////-
{0}`:::::::::::::{1}/dMMMMMMMMMMNo{2}///////////`
{0}-::::::::::::{1}sMMMMMMmMMMMMMMy{2}//////////-
{0}-::::::::::{1}/dMMMMMMs{0}:{1}+NMMMMMMd{2}/////////:
{0}-:::::::::{1}+NMMMMMm/{0}:::{1}/dMMMMMMm+{2}///////:
{0}-::::::::{1}sMMMMMMh{0}:::::::{1}dMMMMMMm+{2}//////-
{0}`:::::::{1}sMMMMMMy{0}:::::::::{1}dMMMMMMm+{2}/////`
{0} .:::::{1}sMMMMMMs{0}:::::::::::{1}mMMMMMMd{2}////-
{0}  -:::{1}sMMMMMMy{0}::::::::::::{1}/NMMMMMMh{2}//-
{0}   .:{1}+MMMMMMd{0}::::::::::::::{1}oMMMMMMMo{2}-
{1}    `yMMMMMN/{0}:::::::::::::::{1}hMMMMMh.
{1}      -yMMMo{0}::::::::::::::::{1}/MMMy-
{1}        `/s{0}::::::::::::::::::{1}o/`
{0}            ``.---::::---..`
"#;

let colors: Vec<DynColors> = vec![
    DynColors::Ansi(AnsiColors::Blue),
    DynColors::Ansi(AnsiColors::Default),
    DynColors::Ansi(AnsiColors::BrightBlue)
];

let art: AsciiArt = AsciiArt::new(ASCII, colors.as_slice(), true);

for line in art {
    println!("{}", line);
}

Dependencies

~155KB