Adding an ASCII Art Gallery
Asciiville includes several ASCII Art galleries produced by the renowned
Ascii Artist, Doctorwhen. These galleries can be viewed by opening
asciiville
in interactive menu mode (execute asciiville
with no
arguments or the -i
argument). From the main Asciiville menu select
Ascii Art then select an Ascii Art slideshow to view from
the list of slideshows available in the Asciiville Art menu.
Additional ASCII Art galleries can be added to the Asciiville Art menu
by creating and populating a directory in /usr/share/asciiville/art/
with ASCII Art files. The convention in Asciiville is for ASCII Art
filenames to end with the suffix .asc
so generate or locate ASCII Art
files, make sure the filenames end in .asc
, and copy them to a new
folder in /usr/share/asciiville/art/
. The new ASCII Art gallery will
show up in the menu listing the available ASCII Art slideshows the next
time you run asciiville
.
Generating ASCII Art
Asciiville provides utilities and convenience menus for generating ASCII
Art from existing images. The pre-existing images can be in any image format.
To generate ASCII Art from a folder of images either use the show_ascii_art
command or the interactive menu interface in asciiville
:
Using show_ascii_art
to generate ASCII Art
The show_ascii_art
command can be used to generate ASCII Art by supplying
it with an input folder of existing images and a desired output folder to
hold the generated ASCII Art files. To do so, invoke the command as follows:
show_ascii_art -I <input folder> -O <output folder>
For example, the command show_ascii_art -I /u/pics/beach -O /u/pics/asciibeach
would convert all of the image files in the /u/pics/beach
folder into
ASCII Art files and store them in the /u/pics/asciibeach
folder.
Note that the quality of generated ASCII Art is quite sensitive to the font in use. The best quality can be achieved with a fixed width font and small font size. You can think of the font as your paint brush and its size as the size of the brush. Higher resolution ASCII Art is achieved with a finer brush. The “palette” used to create ASCII Art is a string of characters. A default palette is defined in Asciiville but alternate palettes can be selected with command line switches.
If one of the terminal emulators that Asciiville is familiar with is used, the font and font size are set for you in a terminal profile or by command line arguments. The terminal emulators that Asciiville has integrated into its generation and viewing facilities are kitty, gnome-terminal, tilix, and xfce4-terminal. The currnt terminal window or console screen can also be used but in that case the font and font size will be whatever is already set.
If you use the current terminal window to generate/view ASCII Art then you may wish to set the font to a fixed width font and size 10 or 12. On the other hand, sometimes lower resolution ASCII Art is appealing. It’s up to you.
Adding and Viewing Art Galleries
The Asciiville Wiki article “Adding and Viewing Art Galleries” provides a brief tutorial introduction to generating a new ASCII Art gallery, customizing, and viewing it.
Asciiville default galleries can be viewed using the interactive menus
in the asciiville
command. Select the Ascii Art entry from
the main menu, select the options you prefer (e.g. preferred terminal
emulator and audio), and select the ascii art gallery you wish to view.
Note that the cool-retro-term
terminal emulator will not, by default,
display the full height of the ascii art included in Asciiville as the
font size is too large. To view Asciiville Ascii Art slideshows using
cool-retro-term
, first reduce the font scaling in the settings menu
to about 0.5. All the other terminal emulators supported by default in
Asciiville (kitty
, gnome-terminal
, tilix
, and xfce4-terminal
) are
dynamically configured during slideshow presentations to scale font sizes
so ascii art is displayed correctly.
Asciiville ascii art viewing utilities including slideshow display utilize
intelligent and configurable font size changes to render ascii art in higher
quality. Each Asciiville ascii art gallery can be configured with options
to control some of these font size and display features. To configure a
gallery, add or edit the file /usr/share/asciiville/art/<gallery>/.config
.
An example Asciiville gallery configuration file can be found in
/usr/share/asciiville/art/Vintage/.config
:
scale_art_font=2
scale_txt_font=1
set_font_size=1
uses_ansi_escape=
show_filename=
In this example, scale_art_font=2
indicates double the font size used for
ascii art display; scale_txt_font=1
indicates no change to the text font
size used for ascii art text display; set_font_size=1
indicates make
font size changes; uses_ansi_escape=
indicates this gallery’s
ascii art does not utilize ANSI escape sequences to color its text; and
show_filename=
indicates do not display the ascii art filename.
The default settings for Asciiville ascii art galleries is:
scale_art_font=1
scale_txt_font=1
set_font_size=1
uses_ansi_escape=1
show_filename=
To display a gallery’s ascii art filename below the ascii art displayed,
set show_filename=1
in the gallery’s .config
. Any, none, or all
settings may be present in a gallery’s .config
. If a setting is not
present, Asciiville uses the defaults described above.
ASCII Art Tools
The Asciiville Wiki article “ASCII Art Tools” describes several tools not included in Asciiville that may be of use in drawing and painting ASCII Art
ASCII Art Online
There are many online galleries of ASCII Art. In addition to the newly minted
extended ASCII Art galleries included in Asciiville, the Asciiville project
also includes a rich set of vintage ASCII Art in the Vintage
art gallery.
The citizens of Asciiville have been diligent in their efforts to comply
with the artists’ licensing restrictions and only art that is freely
redistributable is contained in Asciiville. Many of the online ASCII Art
galleries available to the public are not as scrupulous with regards
licensing requirements. In their defense, it can be extremely difficult
to discover the origin and history of many of these works of art. Most
were just culled from other archives who culled them from downloads of
archives of defunct online bulletin boards and newsgroups and websites.
The point being, we here in Asciiville cannot guarantee anything about
the legal provinance of online ASCII Art galleries. We can only assure
you that the art included in Asciiville has been vetted and complies
with all licensing requirements. Note that much of the art included in
Asciiville prohibits redistribution for commercial purposes (e.g. the
art in the Vintage
gallery). Others prohibit the use of hate speech
in conjunction with the display of the artist’s work. All of these
requirements must be satisfied by Asciiville users, both those of us
here in Asciiville and those who download and install our project.
That being said, exploring the online ASCII Art galleries is fun and much of it can be legally downloaded, utilized however you want, and redistributed. To get started exploring the world of online ASCII Art, visit the following:
Figlet fonts
Asciiville installs many new Figlet Fonts in addition to those installed
by the pyfiglet
Python package. These fonts are used by the asciimatics
Python package. To view a complete list of the installed pyfiglet
fonts,
run the command pyfiglet -l
. To see an example rendering of each of the
installed pyfiglet
fonts including those installed by Asciiville
,
run the command bash /usr/share/asciiville/tools/bin/show_figlet_fonts
.
There are many fonts so you may wish to redirect the output of the
bash /usr/share/asciiville/tools/bin/show_figlet_fonts
command for use
with an editor or pager:
bash /usr/share/asciiville/tools/bin/show_figlet_fonts > figlet-fonts-examples.txt
less figlet-fonts-examples.txt
For an example of how to use the Figlet Fonts in an asciimatics animation,
see /usr/bin/asciiart
.