A Nushell plugin to convert ANSI strings into PNG images and create ANSI text from images.
This plugin allows you to:
- Convert ANSI strings to PNG images with customizable fonts and themes.
- Create ANSI text from an image, enabling you to transform visual data into a textual representation.
The to png command converts an ANSI string into a PNG image. Customizable font and theme options are available, with custom flags overriding the default settings.
> to png {flags} (output-path)-h, --help→ Display the help message for this command.-w, --width <int>→ Output width.-t, --theme <string>→ Select the theme of the output. Available themes: ["vscode", "xterm", "ubuntu", "eclipse", "mirc", "putty", "winxp", "terminal", "win10", "win_power-shell", "win_ps"]. Defaults tovscode.--font <string>→ Select the font from one of ["SourceCodePro", "Ubuntu", "IosevkaTerm", "AnonymousPro"]. Defaults to the first font in the list.--custom-font-regular <path>→ Path to a custom regular font.--custom-font-bold <path>→ Path to a custom bold font.--custom-font-italic <path>→ Path to a custom italic font.--custom-font-bold_italic <path>→ Path to a custom bold italic font.--custom-theme-fg <string>→ Custom foreground color in hex format (e.g.,#FFFFFFfor white).--custom-theme-bg <string>→ Custom background color in hex format (e.g.,#00000000for transparent).--custom-theme-black <string>→ Custom black color in hex format (e.g.,#1C1C1C).--custom-theme-red <string>→ Custom red color in hex format (e.g.,#FF0000).--custom-theme-green <string>→ Custom green color in hex format (e.g.,#00FF00).--custom-theme-yellow <string>→ Custom yellow color in hex format (e.g.,#FFFF00).--custom-theme-blue <string>→ Custom blue color in hex format (e.g.,#0000FF).--custom-theme-magenta <string>→ Custom magenta color in hex format (e.g.,#FF00FF).--custom-theme-cyan <string>→ Custom cyan color in hex format (e.g.,#00FFFF).--custom-theme-white <string>→ Custom white color in hex format (e.g.,#FFFFFF).--custom-theme-bright_black <string>→ Custom bright black color in hex format (e.g.,#808080).--custom-theme-bright_red <string>→ Custom bright red color in hex format (e.g.,#FF5555).--custom-theme-bright_green <string>→ Custom bright green color in hex format (e.g.,#55FF55).--custom-theme-bright_yellow <string>→ Custom bright yellow color in hex format (e.g.,#FFFF55).--custom-theme-bright_blue <string>→ Custom bright blue color in hex format (e.g.,#5555FF).--custom-theme-bright_magenta <string>→ Custom bright magenta color in hex format (e.g.,#FF55FF).--custom-theme-bright_cyan <string>→ Custom bright cyan color in hex format (e.g.,#55FFFF).--custom-theme-bright_white <string>→ Custom bright white color in hex format (e.g.,#FFFFFF).--log-level <string>→ Set log level. Options:CRITICAL (c),ERROR (e),WARN (w),INFO (i),DEBUG (d),TRACE (t). Defaults toINFO.
> to png --theme "xterm" --custom-theme-fg "#FF00FF" --custom-theme-bg "#00000000" output.pngThe from png command converts an image into its corresponding ANSI text representation.
> from png {flags}-h, --help→ Display the help message for this command.-x, --width <int>→ Output width, in characters.-y, --height <int>→ Output height, in characters.--log-level <string>→ Set log level. Options:CRITICAL (c),ERROR (e),WARN (w),INFO (i),DEBUG (d),TRACE (t). Defaults toINFO.
> from png --width 80 --height 20 image.png🚀 Recommended: Using nupm
This method automatically handles dependencies and features.
git clone https://github.com/FMotalleb/nu_plugin_image.git
nupm install --path nu_plugin_image -f git clone https://github.com/FMotalleb/nu_plugin_image.git
cd nu_plugin_image
cargo build -r
plugin add target/release/nu_plugin_image cargo install --git https://github.com/FMotalleb/nu_plugin_image.git
plugin add ~/.cargo/bin/nu_plugin_image