Braille Characters for Terminal Graphical Applications
Drawille is a method of using Braille characters as a mechanism for graphical display in a terminal. Ports of the original by asciimoo exist inmultiple other languages including Perl, Java, Rust, NodeJS, and others. The Perl version was initially produced by @hoelzro, but not much changed since about 8 years ago.
This is another Perl version, targeting ANSI compatible consoles. It delivers significantly higher performance and extends Term::Drawille by including features like:-
- Integrated Turtle-like drawing
- Built-in drawing primitives including line and curve, circle, ellipse, polyline more on the way
- Scrolling with or without wrapping
- Some frame border manipulation
- Text overlays
Tools in other languages have been used in publications, system monitoring tools and for games. Term::Graille allows Perl programmers access to a expanding set of features for developing simple general purpose graphics, graphing applications, games etc from the console.
Associated with Term::Graille is Algorithm::Line::Bresenham. The plotting primitives in the latter are used in Graille
Features to be included are colors, sprites, maps, and more on user request. For more information see the wiki
Version 0.06
Graille does not have the resolution for fancy graphics. Having said that, images converted into mono with appropriate dithering can be surpisingly recognisable at the low resolution oferred. The image2grl.pl
script in the examples folder uses Image Magick to perform the transromation down to a Graille canvas's resolutions, and plotted on to the canvas pixel by pixel. Graille offers the option to import or export .grl
files.
The animation demo uses Image::Magick to convert a folder of frames into monochrome images, which are then converted to bitmap plots on a canvas. These bitmap plots are displayed sequentially creating an animation.
This is an animation derived from a sprite sheet at Adobe stock photos which do a 30 day free trial.