Skip to content

API Overview

Core types

  • Artbox: unified entrypoint (text, sprites, images)
  • Renderer: text-only renderer with alignment, spacing, fill
  • RenderTarget: { width, height } for all render calls
  • Rendered: unified output enum
  • GridRendered: grid output for text/sprites/ASCII images

Output conversions

use artbox::{Artbox, RenderTarget};
let art = Artbox::default();
let rendered = art.render_text("Hello", RenderTarget::new(40, 8))?;
let plain = rendered.to_plain_string();
let ansi = rendered.to_ansi_string();
let metrics = rendered.metrics();

Fonts

  • Font::from_file, Font::from_content, Font::from_bytes_latin1, Font::from_bytes_utf8
  • fonts::font, fonts::stack, fonts::family, fonts::default

Colors & gradients

  • Color, Rgb, Hsl
  • Fill, LinearGradient, RadialGradient, ColorStop

Sprites

  • Sprite, SpriteVariant, SpriteLayer
  • SpriteSelection, SpriteSize

Images (feature images)

  • ImageOutput: Auto | Terminal | Ascii
  • TerminalImageConfig, TerminalImageMode
  • AsciiOptions, AsciiMode
  • Rendered::with_fallback for plain/grid fallback on terminal images
  • render_image_* helpers in artbox::images