ASCII art

    _    ____   ____ ___ ___              _  

   / \  / ___| / ___|_ _|_ _|   __ _ _ __| |_

  / _ \ \___ \| |    | | | |   / _` | '__| __|

 / ___ \ ___) | |___ | | | |  | (_| | |  | |_

/_/   \_\____/ \____|___|___|  \__,_|_|   \__|

ASCII art je výtvarné umění, které pracuje s počítačovým textem jako s výtvarným médiem. Obrázky, které tvoří, se skládají ze znaků kódu ASCII. ASCII art je možné vytvořit jakýmkoli textovým editorem a většinou je potřeba ho zobrazit neproporcionálním fontem (tedy každé písmeno má stejnou šířku, podobně jako na psacím stroji čiterminálu). Jeden z pravděpodobně nejstarších ukázek se objevuje v roce 1881.[1]

ASCII art se používá kdekoli se text přenáší nebo zobrazuje snadněji než grafika, anebo v některých případech, pokud není přenos obrázků vůbec možný, tedy psací stroje, dálnopisy, negrafické počítačové terminály, starší počítačové sítě (např. BBS), email a Usenet news. ASCII art se také používá ve zdrojových kódech programů pro zobrazení loga firmy nebo produktu a kreslení diagramů.

Dovedením tohoto média do extrému je jeden video driver pro populární počítačovou hru Quake, který zobrazuje hru jako ASCII art.[2]

Druhy a příklady ASCII artu 

Nejjednodušší formou ASCII artu je kombinace dvou nebo tří znaků pro vyjádření emocí, zvaná emotikona(slangově: smajlík). Představte si tyto příklady otočené o 90 stupňů po směru hodinových ručiček, aby se dalo rozumět jejich obsahu:

      :-) nebo :) ..úsměv

      :-( ..........mračení

      ;-) ..........mrknutí

      :-P ..........ha ha (vyplazený jazyk)

      B-) nebo 8-) .bezva (sluneční brýle)

Složitější příklady používají několik řádek textu pro větší symboly nebo složitější obrázky. Některé běžné příklady:

           (__)                     

           (oo)                     

    /-------\/                  O    

   / |     ||      /o)\        /H\ 

  *  ||----||      \(o/        / \

     ~~    ~~

       kráva     Jin/Jang   postavička

Často si lidé takové obrázky přidávají na konec e-mailu nebo do Usenetové konference, kde se jim říkásignatura.

Některé druhy neberou v potaz konkrétní tvar znaků a používají je jako více méně zabarvená políčka s proměnným gradientem pro jednoduchou simulaci ditheringu:

 

                 _a,

                _yQa.

               _qTWW(

               je`?QX:

              <d+ -3Wm;

             _qos_s%mWw,

             a2?????TWW(

            sd(     -?Qm;.

          .amm;     .xmWmc

          """""`    """""""


Další druh vytváří slova pouze jedním druhem znaku na jedno písmeno. Příklad:

 

            AA          HHHHHH    HHHHHH        OOOOOOOO         JJJJJJ     !!!

           AAAA          HHHH      HHHH       OOOOOOOOOOOO        JJJJ     !!!!!

          AAAAAA         HHHH      HHHH      OOOO      OOOO       JJJJ     !!!!!

         AAAAAAA         HHHH      HHHH      OOOO      OOOO       JJJJ     !!!!!

         AAA AAAA        HHHHHHHHHHHHHH     OOOO        OOOO      JJJJ     !!!!!

        AAAA AAAAA       HHHHHHHHHHHHHH     OOOO        OOOO      JJJJ     !!!!!

       AAAA   AAAA       HHHHHHHHHHHHHH     OOOO        OOOO      JJJJ      !!!

       AAAAAAAAAAAA      HHHH      HHHH      OOOO      OOOO       JJJJ

      AAAA     AAAAA     HHHH      HHHH      OOOO      OOOO       JJJJ      !!!

     AAAAAA    AAAAAA    HHHH      HHHH       OOOOOOOOOOOO        JJJJ     !!!!!

    AAAAAAA    AAAAAAA  HHHHHH    HHHHHH        OOOOOOOO         JJJJ       !!!

       

Dalším použitím ASCII artu je vytvoření jedinečné typografie:

 __       )                         

(, )  |  / .  /)   .             /) .   

   | /| /    (/_      _    _   _(/     _ 

   |/ |/  (__/(___(__/_)__(/__(_(__(__(_(_

   /  |           ,-/                  

                 (_/                   

Počítačový program Figlet (a další programy, které podporují jeho standard) umožňují návrh a použití ASCII fontů.

        _____ ___ ____ _      _  

       |  ___|_ _/ ___| | ___| |_

       | |_   | | |  _| |/ _ \ __|

       |  _|  | | |_| | |  __/ |_

       |_|   |___\____|_|\___|\__|

 

Příklad, jak může vypadat Amigastyle (občas se nazývá styl staré školy). Tento druh ASCII artu je vždy ručně psán v textovém editoru. Některé populární editory, které se k vytváření používaly jsou CygnusEditor (neboli CED pro počítače Amiga) a EditPlus2 (na PC).

                  ______.----------------------------.______

                :_)                                        (_:

            ....|:                                          :|....

            :  :<>                                          <>:  :

            :···|:                                          :|···:

        .---+- -:-                                          -:- -+---.

     /\___  |    /\___      /\_____     /\______     /\______    |   /\___

   _/    /  |  _/    /___ _/ __   /   _/  __   /   _/  __   /    : _/    /

   \  __//\ :/\\   _//  / \  )/  //\  \   )/  //\  \   )/  //\  /\ \_   //\

 _/—— \)—  \/  —— __—   \/—— —  ——  \/——  —_ ——  \/——  —_ ——  \/  —)/  ——  \_

 \                )/—                     (/           (/          —        /

/——               /                       /            /            _      ——\

\_           /\__/        /\_        /\__/        /\__/         /\_(/       _/

=/          /===/        /==/       /===/        /=©d/         /=:=/       /=

 —————————\/:   :——————\/   ——————\/    ———————\/    ————————\/  | ——————\/

  ______.---+-  :____ /\_____  :              :      ________:  -+---.______

:_)·····    :.....  _/      /--+--./\_____.---+---./\___    .....:    ·····(_:

|:           : ..:..\      /   : _/      /    :  _/    /  ..:.. :           :|

<>           :.:.: : \  __//\  /\\  __  //\  /\  \_   //\ : :.:.:           <>

|:             :..._/—— \)—  \/  —— )/ ——  \/  ——)/  ——  \_...:             :|

:        ____ ____ \                —            —        / ____ ____        :

\_.     _\_  \\  //——                            _       ——\\  //  _/_     ._/

---· _  \— _  \\ \\_           /\_           /\_(/        _// //  _ —/  _ ·---

/—·  \——— —\——— ——=/          /:=/          /=:=/        /= —— ———/— ———/  ·—\

:     ——————       —————————\/-+--————————\/--+--——————\/         ——————    :

|:                             :              :                             :|

<>                          .              .                                <>

|:                      _ . | __ .__.__   .|__  __    .                     :|

:—).....             __(__|-|(_/_| (| ((__||__)(__)(__|__             .....(—:

  ——————·-----------·-------|----|--|----(/----------(/--·-----------·——————


V ASCII lze vyrobit i celé 
animované filmy. Nejznámější příklad je převedení filmu Star Wars naasciimation.co.nz.

Metody generování ASCII artu

Specializované textové editory jsou navrženy pro snadné kreslení čar, boxíků a vyplněných oblastí. Generování ASCII artu je algoritmicky snadné. Dobrý příklad je aplikace na webu IMG2TXT. Převod rastrové grafiky (bitmapy) na ASCII art je speciální případ vektorové kvantizace. Příklad generovaného obrázku, i s originálem na straně, je uveden níže:

http://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Redwingblackbird1.jpg/220px-Redwingblackbird1.jpg

Původní obrázek

aaaaaa222222SSSSSS2222222SSSS2a22222SSSSSSSS22aaaaaaaa222222SS222aaaZaaZZZZ

2222aaaaS2222222222222222SS2SS22222SSXXXSSXSSXSSSXXXXXSSXSXXXXXX7XSSSSSSS22

2222222aaaZZa222222a222222SS22a22SSX77rrr777X77XXXSSSSSXSSXSSSXXXSXSS22S222

22a2222aaaaaaa22222aaaZZa2aa2aa2222SSSSXXXSSSSXXXXXXSXSXXSSSSXSSSXX7X22SSS2

22222a222222222222aaaZZZZZaaZaaZZZaaaa2a2SSSSSSSXSXXXXXXXXSX7;..,;20X77XXXS

2SSSSSXSSSSSSSSSSSSSS2222aa2222aaaaaa222222SSX7X777XXXX7r:   aMMMMBS7XX7XXX

SSSSSSXXSXXSSX7:,::i:.:rXSSSSSS22222a2SSXX7XXX77rr;i,    :WMMM@r.,;XSSSSS22

S22a222S2222XirWMMMMMM@a:;XSSXXXSSXXXX77;ii:,,,:...:rX0MMMMZ: ,;XSS2S222222

SSSS22aaa22X,2MMMWWW@@MMM2.:i:,,.    ..i7ZB@MMMMMMMMMMMM07 :7SaaaZZaaaaa222

XSXSXXS2S7: rMMZWWWWWWW@MMMB0MMMMMMMMMMMMMMM@WMW@@W@@@@WMMZaZ8888ZZaa2222S2

rrr;77rriXMMMMMWWWWWWWWWWWMMMM@W@M@@@@@@WWWWWBWW@WW@8ZW@MXS0B00088ZZZZaaaa2

;;iiiii:;ZX;,8MMWWW@@MMMMMMMM@W@WWWWB0@

08a222SS22aZZZZ2BMir7r   MMMMBBWWBBBBWWWWWWMMM0,:;rr7XXXXXX777rr77XX7X77X7X

0WWWBB088888ZZ8ZSZMMM8MMMMM@WWWWBBWW@WWWWWMM2,ir7r7r77XXX77rr;;;rr7XXSS2222

SSSaaaZZZaaa22222X;rWMMMMWWWWWWWWWWWWWWWWWMB;r77XXXXS2222SSX77rr;rr7XXX2aZa

SSSSSSXXXXX7XXXX777;. XWMMM@WW@@@@WWWWWWMMM22a22222222222SSXX7rrrrrr7XXSSSS

2222SXXXX7XXX7XXXXXX7ri  i0M@@MWMMMMM@MMMBZZ0B000000088ZZZZZZZZZaaa22SSSSXS

22aaZZ8Z888808888ZZZZaa2X:MZMMW ..78WMMZrXSSS2222aaaaaZZZZZZZZaZaaa222SS2SS

2SXXSS22aaZ880000BBBBB088S2BWMMXaX7 ;Mii7rr;;;i;;;;;;;rr777r7r7r7rrr7rr77XX

888ZZZZa2SSX77XXSSXSSSSS2SX7    8SrXMr;XX77r77rrrr;;;;;rrrr77r7r7rrrr;rr;i;

Z8088ZZZZZZ22SSSSSXX7777rrrXai 7270Mr72aZZZZ888888888ZZZaSSXSXSSSX7r;i::;rS

aaaSS2222aaaaaaZaZZZ888888Z88M; .MMrrSSXXXS2aaa2aaaa2S77rrrr777X77XXX2a888Z

XXX7X77rrr7XXS222222aZZZ8ZZa7@2: 7M,;;;;iiii::,::,,...,:,.,::i;r;rr7X2ZZa22

XXr;ii::iiii;r777rrr7ri::iir,M,S MMZXS2Zaaa22SXX77777XS222222aaa2SXX777r7XX

X77r;rr7XXXSSSSSXS22XrrXSa80Z080,  2Z8aaaZZ880BBWWWWWWWWWWWWWW@WWWWWB08ZZZZ

i,:iirrrrr7rrrrr7a:;MMM@WBB0000WMW  i8Z22aaa8Z888Z888000BBB88ZZZZ0BBW@MMMMB

822SXXaZa2XX77777Z    rMM@8Z880BMM: :XBZaaa22222ZZZZZaa222XXXXXXXXXXXS2aZZ2

8WaSSr77XX2Z0@@@WMMX     7MM@0ZZZ:M2 ;0Z8aSX7r;7XaZaS77r;rXX2aa2SSXXXSSX7r;

   ;;7X;:ii.:..7SZ8BWZ;     ;2S77  XB SiX;;rrr;ii;i::,::;r;7X;iii::,,.... ,

282X,  ..2a8W8Sr.,;a8WMMM@,    2BMW22@. 72a22S22a2aZZ8082;i;:,:iir7XSSXriii

,:SZ,7. i:i  .    ;.,.i7rSWMMMr  ,2B0iM  ,8SSSSXrr7777XXS22a2aZZ8880ZSXX280

  .  rZMZS8  r:.7  ri   ,     ;08Z  r8SBZ :;X7SaZ80Z227r:...     .,. ,ir7X2

BBZZX7;2;.a8XSSr8000Z@MMMMW0082i ;8WX:70SMSSaa:iii;;rXX7X0MM@BB0Za2S77rr7rX

Další metoda je převedení obrázku do stupňů šedi s méně než 8bitovou přesností s následným přiřazením výstupního znaku pro každou úroveň šedi. Tak to dělají některé on-line konvertory (viz externí odkazy níže). Často se takto tiskly fotografie, právě pro zvýšené odstupňování tónů.

V sedmdesátých a osmdesátých letech bylo populární vytvářet druh ASCII artu, který spoléhal na několikanásobné vytištění jednoho znaku na stejné místo. Tím se vlastně zvýšila jeho sytost. Často se takto tiskly také fotografie, neboť se přetiskem zvyšovalo rozlišení šedotónové škály. Dokonce se dala použít i tiskárna s typovým kolečkem. Tato technika uvadla, protože všechny běžné tiskárny mohou tisknout fotografie, ale textové soubory (nebo emailové zprávy nebo Usenetové příspěvky) neumožňují vykreslit text vytištěný přes sebe. Nicméně podobná technika zůstala zachována: obrázky ASCII art stínované nebo obarvené ANSI Escape sekvencemi nebo HTML značkami, čímž se přidá různorodost.

Animované ASCII art je možné pomocí video terminálu s Escape sekvencemi, například ANSI X3.64 pro přesunutí kurzoru do obrázku.