

|
_ ____ ____ ___ ___ _
/ \ / ___| / ___|_ _|_ _| __ _ _ __| |_
/ _ \ \___ \| | | | | | / _` | '__| __|
/ ___ \ ___) | |___ | | | | | (_| | | | |_
/_/ \_\____/ \____|___|___| \__,_|_| \__|
|
ASCII art, an artistic medium relying primarily on computers for presentation, consists of pictures pieced together from the 95 printable characters defined by ASCII). The term is also used more loosely to refer to text based art in general. They can be created with any text editor, and are often used with free-form languages. Most examples of ASCII art require a fixed-width font (non-proportional font, like on a traditional typewriter) such as Courier for presentation.
ASCII art is used wherever text can be more readily printed or transmitted than graphics, or in some cases, where the transmission of pictures is not possible. This includes typewriters, teletypes, non-graphic computer terminals, in early computer networking (e.g., BBSes), e-mail, and Usenet news messages. ASCII art is also used within the source code of computer programs for representation of company or product logos, and flow control or other diagrams. In some cases, the entire source code of a program is a piece of ASCII art - for instance, an entry to one of the earlier Obfuscated C contests is a program that adds numbers, but visually looks like a binary adder drawn in logic ports. Taking the medium to extremes, there exists a video driver for the popular computer game Quake that displays the game in ASCII art. ASCII art is also very commonly used amongst software piracy groups to display group logos inside text (*.nfo) files containing the instructions for installing and cracking the software (though these commonly use PC text mode characters as well as just ASCII).
Contents |
The simplest forms of ASCII art are combinations of two or three characters for expressing emotion in text. Rotate these examples mentally 90 degrees clockwise for a more recognizable orientation of these emoticons:
:-) or :) :-( or :( ;-) or ;) :-P or :p B-) or 8-)
smile frown wink Ha Ha cool
(tongue sticking out) (sunglasses)
|
There is another type of one-line ASCII art that doesn't require the mental rotation of pictures, which is widely known in Japan as kaomoji (literally face characters.) Some call them "verticons":
\(^o^)/ (o.~) o< d O.O b yippee winking conspiracy duck listening to headphones |
More complex examples use several lines of text to draw large symbols or more complex figures. Some common examples:
o o o o o <o <o> o> o .|. \|. \|/ // X \ | <| <|> Ascii Macarena /\ >\ /< >\ /< >\ /< >\ /<
(__)
(oo)
/-------\/ __ O _ ,__o
/ | || /o)\ /|\ >(o)__ _-\_<,
* ||----|| \(o/ / \ (_~_/ (*)/'(*) _@/
~~ ~~ ~~~~~~~
Bull Yin/Yang Person Rubber Duck Cyclist Andalusian
Video Snail |
A very complicated and splendid example of this depicts a building
.-.
/___\ ||--------------.
|___| ||.___TO_LET___.|
|]_[| || asciihomes |
/ I \ || 555-1212 |
JL/ | \JL ||______________|
.-. i () | () i ||./ .-.
|_| .^. /_\ LJ=======LJ /_\ ||/ .^. |_|
._/___\._./___\_._._._._.L_J_/.-. .-.\_L_J._._||._._/___\._./___\._._._
., |-,-| ., L_J |_| [I] |_| L_J ., |-,-| ., .,
JL |-O-| JL L_J%%%%%%%%%%%%%%%L_J JL |-O-| JL JL
IIIIII_HH_'-'-'_HH_IIIIII|_|=======H=======|_|IIIIII_HH_'-'-'_HH_IIIIII_HH_
-------[]-------[]-------[_]----\.=I=./----[_]-------[]-------[]--------[]-
_/\_ ||\\_I_//|| _/\_ [_] []_/_L_J_\_[] [_] _/\_ ||\\_I_//|| _/\_ ||\
|__| ||=/_|_\=|| |__|_|_| _L_L_J_J_ |_|_|__| ||=/_|_\=|| |__| ||-
|__| |||__|__||| |__[___]__--__===__--__[___]__| |||__|__||| |__| |||
IIIIIII[_]IIIII[_]IIIIIL___J__II__|_|__II__L___JIIIII[_]IIIII[_]IIIIIIII[_]
\_I_/ [_]\_I_/[_] \_I_[_]\II/[]\_\I/_/[]\II/[_]\_I_/ [_]\_I_/[_] \_I_/ [_]
./ \.L_J/ \L_J./ L_JI I[]/ \[]I IL_J \.L_J/ \L_J./ \.L_J
| |L_J| |L_J| L_J| |[]| |[]| |L_J |L_J| |L_J| |L_J
|_____JL_JL___JL_JL____|-|| |[]| |[]| ||-|_____JL_JL___JL_JL_____JL_J |
AHHHHA AHHHHHHA AllSTOPllA VHHHHHHV VHHHHV |
It is popular to put such art in one's signature block to be included in all one's e-mail and Usenet postings.
Some types ignore the particular shape of the characters and use them as more-or-less filled boxes of varying gradients to perform simple dithering:
_a,
_yQa.
_qTWW(
je`?QX:
<d+ -3Wm;
_qos_s%mWw,
a2?????TWW(
sd( -?Qm;.
.amm; .xmWmc
"""""` """""""
|
Another type sometimes seen is creating a word using only one kind of character per letter. For example:
HHHHHH HHHHHH IIIIII !!! HHHH HHHH IIII !!!!! HHHH HHHH IIII !!!!! HHHH HHHH IIII !!!!! HHHHHHHHHHHHHH IIII !!!!! HHHHHHHHHHHHHH IIII !!!!! HHHHHHHHHHHHHH IIII !!! HHHH HHHH IIII HHHH HHHH IIII !!! HHHH HHHH IIII !!!!! HHHHHH HHHHHH IIIIII !!! |
Pictures can also be created this way, as this example of a heart shows, which was created using only 'x' characters.
XXXX XXXX
X X X X
X X X
X X
X X
X X
X
|
XXXX XXXX
XXXXXX XXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXX
XXXXXXXXX
XXXXX
X
|
One use for ASCII art is to create unique typography, for example:
___ __,
( / ( o _/_ /
/ __, _ _ `. _ _ , / /_
_/_(_/(_/ /_(/_ (___)/ / /_(_(__/ /_
//
(/
|
The program Figlet (and other programs that support its standard) allow for the design and use of ASCII fonts.
_____ ___ ____ _ _ | ___|_ _/ ___| | ___| |_ | |_ | | | _| |/ _ \ __| | _| | | |_| | | __/ |_ |_| |___\____|_|\___|\__| |
An example of what "Amiga-style" (also referred to as "oldschool style") scene ASCII art looks like. This kind of ASCII art is always handmade in a text editor. Some popular editors used to make this kind of ASCII art are CygnusEditor aka CED (Amiga) and EditPlus2 (PC). (Note, if you have trouble reading it, the logo and signature both says "cherryboy")
______.----------------------------.______
:_) (_:
....|: :|....
: :<> <>: :
:···|: :|···:
.---+- -:- -:- -+---.
/\___ | /\___ /\_____ /\______ /\______ | /\___
_/ / | _/ /___ _/ __ / _/ __ / _/ __ / : _/ /
\ __//\ :/\\ _// / \ )/ //\ \ )/ //\ \ )/ //\ /\ \_ //\
_/¯¯ \)¯ \/ ¯¯ __¯ \/¯¯ ¯ ¯¯ \/¯¯ ¯_ ¯¯ \/¯¯ ¯_ ¯¯ \/ ¯)/ ¯¯ \_
\ )/¯ (/ (/ ¯ /
/¯¯ / / / _ ¯¯\
\_ /\__/ /\_ /\__/ /\__/ /\_(/ _/
=/ /===/ /==/ /===/ /=©d/ /=:=/ /=
¯¯¯¯¯¯¯¯¯\/: :¯¯¯¯¯¯\/ ¯¯¯¯¯¯\/ ¯¯¯¯¯¯¯\/ ¯¯¯¯¯¯¯¯\/ | ¯¯¯¯¯¯\/
______.---+- :____ /\_____ : : ________: -+---.______
:_)····· :..... _/ /--+--./\_____.---+---./\___ .....: ·····(_:
|: : ..:..\ / : _/ / : _/ / ..:.. : :|
<> :.:.: : \ __//\ /\\ __ //\ /\ \_ //\ : :.:.: <>
|: :..._/¯¯ \)¯ \/ ¯¯ )/ ¯¯ \/ ¯¯)/ ¯¯ \_...: :|
: ____ ____ \ ¯ ¯ / ____ ____ :
\_. _\_ \\ //¯¯ _ ¯¯\\ // _/_ ._/
---· _ \¯ _ \\ \\_ /\_ /\_(/ _// // _ ¯/ _ ·---
/¯· \¯¯¯ ¯\¯¯¯ ¯¯=/ /:=/ /=:=/ /= ¯¯ ¯¯¯/¯ ¯¯¯/ ·¯\
: ¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯\/-+--¯¯¯¯¯¯¯¯\/--+--¯¯¯¯¯¯\/ ¯¯¯¯¯¯ :
|: : : :|
<> . . <>
|: _ . | __ .__.__ .|__ __ . :|
:¯)..... __(__|-|(_/_| (| ((__||__)(__)(__|__ .....(¯:
¯¯¯¯¯¯·-----------·-------|----|--|----(/----------(/--·-----------·¯¯¯¯¯¯ |
Specialized text editors are designed to draw lines, boxes, and filled areas easily. Generating ASCII art algorithmically is straightforward. A good example is this web-based application IMG2TXT. Converting a bitmap to ASCII art is a special case of vector quantization. An example of a generated image, next to the original, is given below:
tt%%%%%%tttttttttttttttttt;;;tttttt;;;:::;;;;;ttttttttt;;;;;;;;;tttt%%%C7O7
t,;;;;;;;;;;;;:;;;;::;;;::::::;;:::,... .......,...................,,:,::;t
t;ttttt%C7OO7%tttt%%%%%%tttttt%%tt;;,,....,,,,.,,,,,:::::;;;;;:,,:::;;;;;t;
t;ttttttCCCCC%%tt%tCO77x27777O77C%tttt;;::::::,,,,,,,,,,,:;;;::,,,,,:;::;;;
t:tttttttt;tttttttt%CC7OO77CC%%72OOO7C%ttt;;;;:,,,..,.,,......;xsQsG:...,::
;,;;;;;:;;:;;;;:,,,,,,,;;tttt;tttt%t%ttt;;;;:,...... tSMMM#Q%;:::,:;:
;,;;;;;:;;;;;:,tD@@@@8Zt,,:;;;;:;;;:;;:,,........... .;DMMMMD;...,;tttttt;
;,;;;;tttt;;.,@MMMMMMMMM#C..,..........:;tZ0SKbE@#MMMMMMMMC. .,;tCC7C%C%%t;
,.,,,,:;;:..,NMMMMMMMMMMMMMSQKE###NNNMMMMMMMMMMMMMMMMMMMM#C;7GDDD5G2OCCttt;
. ,sMMMMMNNN#NNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN@NMMbODS99Qs5xx2O77CCt
.,. DMMN##MNMMMMMMMMMMMMMMN#MN@NNNN##NN###@EE@MM@ttttt;;ttCC777Ot
.,::;:. ;NNNEGOCOZQG. ,MM#@@##@##@#####NNNN#NN@@K8Qx:,::::,:;;;ttt%t
..:;%ZsD0D0Ds57;@ME:,:;tO MN@@@#########NNNMMMM#K5t;,,;tt%ttttttt;;;;;:
tOQDDs5DQgEE@@bSMM,.;tx2 MMM#######NNNNN##NMNgx;::;t7O22xZ22xxOC%tt;;,:,
sQSsG2C%CxGs00DZ0Mt:t;. .tQMM########NNNN#NMMK. .,,:;:,,,...,,::,,,,,,,
sD8S9DsZxxxx22OCtO#MME8QMMMMM#######NN#NNNNMD. ...,,,... ...,:;tt;
t;tt%t%%tttt;;;;:,.,7#MMMMMMNNNNNNN#N####NMK...,:::;;;t;;;:,.. ..,:;%7t
t,;;;;:,,,,,.,,,... :s@NMN#NMMMMMNNNNMN@Z%xxZxxZZxxO7C%ttt;;:,,,,,,:;;;:
t;tttttttttt%%tt%tt;;,. t@NNNO,7S#MMM#sttt7xGZZZZZZxxZxZZx2x227%ttt;;::;,
t;tttCO2xGGsD00QQ99QD52%t,%59N#. .@D. .............,,,::::::::,.......,.
x7x2OOCC%ttt;;tttCCC%%tt;;.. ,,. 0% ......... .... ...
xxD5Z27OC%tt;;;:;;;:::;:,.... .2x@t ,;;tt%%77O7CC%tt;;:,..,,,,,... .,,
t:;;::::;;;ttttttt%%7O2xxx27Ob: 0M% ..,.,::;;;;;;;:,... .....,,:t%2GGt
: . ..,;::::;;;;;ttt;Q5 MC ..,..... .. ...,:,,::;tCC%t;
, ......... .,;tt9G; ,ttt%7OxxxxxZZxxxZZ5D009QSS8g8S0Dsx7Ctttt
. ......,...,,. ;OG5D98gKSgK9 CZ7C2xGs0S8gKbEEE@@@@@bg8ggKEEE@@@@@@5
:.,...,:::,,,.,,,t CgES0098b@M. .x57CCttt%CxxZxxO7C%ttt;;;;;;tt%OxGsZ%
:;;.,....,,;;t2509x ,OGZ772,O, t%t;:,.. ..;;;,. ..,,,,.. .
.. .;tD2, ,: ,t .,.... ..
. ,tOZ2; tDOt2, ;;:::::,:;;ttt:. . ...,;:,. .
. ,:;,. t;2; .;::;;;;tt;::.,........,::....;C;
. ,. .. . .. :;tt... .;:,..,. ....... .:;:... ..
Another method is to sample the image down to grayscale with less than 8-bit precision, and then assign a character for each value, as some online ASCII converters do (see external links below).
In the 1970s and early 1980s it was popular to produce a kind of ASCII art that relied on overprinting — the overall darkness of a particular character space dependent on how many characters, as well as the choice of character, printed in a particular place. Thanks to the increased granularity of tone, photographs were often converted to this type of printout. Even manual typewriters or daisy wheel printers could be used. The technique has fallen from popularity since all cheap printers can easily print photographs, and a normal text file (or an e-mail message or Usenet posting) cannot represent overprinted text. However, something similar has emerged to replace it: shaded or colored ASCII art, using ANSI video terminal markup or color codes (such as those found in HTML, IRC, and many internet message boards) to add a bit more tone variation. In this way, it is possible to create ASCII art where the characters only differ in color.
Animated ASCII art is possible by embedding video terminal escape sequences such as ANSI X3.64 for cursor movement into the "picture".
While most ASCII is created using a monospace font in which all characters are identical in width (Courier New is a popular font), there are some ASCII's using a proportional font, such as Arial. These ASCII's, rather than using a purely shade-based correspondence, use characters for slopes and borders and use block shading. These ASCII's generally offer greater precision and attention to detail than fixed-width ASCII's for a lower character count, although they are not as universally accessible since they are usually relatively font-specific.
There are a variety of other types of art using text symbols from character sets other than ASCII and/or some form of color coding. Despite not being pure ASCII, these are still often referred to as "ASCII art". The character set portion designed specifically for drawing are known as the line drawing characters or pseudo-graphics.
▄▄▄▄▄▄▄ █ ▄ ▄ █ █ ▄ █ █ ▀ █ █ ▀▀▀ █ ▀▀▀▀▀▀▀ |
The IBM PC graphics hardware in text mode uses 16 bits per character. It supports a variety of configurations, but in its default mode under DOS they are used to give 256 glyphs from one of the IBM PC code pages (Code page 437 by default), 16 foreground colors, 8 background colors and a flash option. Such art can be loaded into screen memory directly. ANSI.SYS, if loaded, also allows such art to be placed on screen by outputting escape sequences that indicate movements of the screen cursor and color/flash changes. If this method is used then the art becomes known as ANSI art. The IBM PC code pages also include characters intended for simple drawing which often made this art appear much cleaner than that made with more traditional character sets. Plain text files are also seen with these characters, though they have become far less common since Windows GUI text editors (using the Windows ANSI code page) have largely replaced DOS based ones.
A large character selection, the commonness of Japanese on the internet and the availibility of standard fonts with predictable spacing make shift-jis a common format for text based art on the internet.
Unicode would seem to offer the ultimate flexibility in producing text based art with its huge variety of characters. However, finding a suitable fixed-width font is likely to be difficult if a significant subset of Unicode is desired. Also, the common practice of rendering Unicode with a mixture of variable width fonts is likely to make predictable display hard if more than a tiny subset of Unicode is used.
Editors created solely for the purpose of creating hand-made ASCII art.
Tools which convert bitmapped images to ASCII text or otherwise automatically generate ASCII art with a minimal degree of human interaction.
ASCII art groups are defined as organized bodies of people dedicated to the purpose of creating ASCII text based artwork.