Skip to content

saiftynet/Term-Graille

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Term-Graille

Braille Characters for Terminal Graphical Applications

termgraille

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

Importing images

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.

grailleimage

Animation Demo

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.

animate

Fonts