Settings

The page will reload to apply your changes.
Theme

ASCII Art Font

ASCII Art Menu

Original Usenet thread from alt.ascii-art, started 21 Aug 1998.
 _   _                     _        _             _     _           
| | | |___  ___ _ __   ___| |_     / \   _ __ ___| |__ (_)_   _____ 
| | | / __|/ _ \ '_ \ / _ \ __|   / _ \ | '__/ __| '_ \| \ \ / / _ \
| |_| \__ \  __/ | | |  __/ |_   / ___ \| | | (__| | | | |\ V /  __/
 \___/|___/\___|_| |_|\___|\__| /_/   \_\_|  \___|_| |_|_| \_/ \___|
Ascii utils

Ascii utils

alt.ascii-art · 5 messages · 21 Aug 1998 - 24 Aug 1998
Tero Lindeman <xtm...@NOSPAM.solutions.fi> ASCII art 21 Aug 1998 00:00 · permalink · report
Hi!

I'm programming some utilities to help when creating ascii pictures. I
would like to know what programs are there already and what do you all
often need.
-- 
 .a$$$b.                                    .d$$$s.
:$$$$$P' Tero Lindeman -- xtm...@solutions.fi $$$$$$$
`$$$$'   http://webclub.solutions.fi/~xtmb/ Y$$$$P'
  "P'                                        "QP'

Martin Atkins <zne...@ovtsbbg.pbz> ASCII art 22 Aug 1998 00:00 · permalink · report
.----- On Fri, 21 Aug 1998 11:38:01 +0300, Tero Lindeman posted:
|Hi!
|
|I'm programming some utilities to help when creating ascii pictures. I
|would like to know what programs are there already and what do you all
|often need.
'---------------------------

* FIGlet - Creates large ascii banners
      __   _ __       __  __   _
     / /  (_) /_____ / /_/ /  (_)__
    / /__/ /  '_/ -_) __/ _ \/ (_-<
   /____/_/_/\_\\__/\__/_//_/_/___/ 
    _     _ _  or    _   _     _
   | |   (_) | _____| |_| |__ (_)___
   | |   | | |/ / _ \ __| '_ \| / __|
   | |___| |   <  __/ |_| | | | \__ \
   |_____|_|_|\_\___|\__|_| |_|_|___/  and many other fonts...

* GIFscii (and variants) - makes solid style ascii pictures from GIF (or
some other format) pictures.
           |         ;$XXHXXXXXXX+.           |           
           |      :XXXHHHHHXHHHHXXX$.         |           
           |    /XXXXHHHXXHHHHHHHXXXH/        |           
           |   /XXXXXHHH$HHHHHHHHHHHHH%       |           
           |  .XXXXXXHHX$HHHHHHHHHHHHHH;      |           
           |  ;XXXXXHX$XX$$$XHHHHHHHHXHX.     |           
           | .$XXXH%/;;;::::;/$HHHHHHHXX;     |           
           | =XXXHX//;;:::::;;/+HXHHHHHH$     |           
           | /HXXH$//;;;;::::;;/$XHHHHHXX-    |           
           | %HXXH%/;;;;;;;;+$$%$XHHHHHHX/    |           
           | XXXXHX$X$%+//+++;$%HXHHHHHHX$.   |           
           |.XXXXHX+/////://;///+$XHHH@HHHHH/.|           
           |,X$XXHH%;;;;/;///;;;+$XHHH@HHHH@@@|           
           |-X$XXH@H+/++/;/++;//%XHHHH@HHHH@@@|           
           |=$$XXHHH@@%%$$%++++%$XXHHHHHXH@@@@|           
           |=$$XXX$$@@@H%++++%%%$$XHXH@HH@@@@@|           
           |=$XHXX%$@@@@@%+++%$%$$XXXHH$H@@@@@|           
           |-+%XHHH@@@@@@@X+/+%$$$$$$%%/=$@@@@|           
           | //XXXH@@@@@@@@@@@@X%%++///=--/H@@|           
           |   %XXHH@@@@@@@@@@@@X+;/;;=-,,,-$@|           
           |  =XHXHH@@@@@@@@@@@@X/,. ..-,..,,/|           
           |  $H@@@@@@@@@@@@@@@@XH;....,......|           

* ASC-TOOL - does rotation and flipping of ASCII Art

* ASC2PIC - the reverse of GIFscii... takes solid style ascii and 'draws' is
as a picture on the screen.

* RESIZE - Performs 'pixel' resizes on ASCII Art... adding or removing
characters to resize the pic.

* ASCHALF - Resamples asciiart to 50% graphically.

* LGIFScii - Line GIFscii... like GIFscii but with lineart. This program is
not finished yet.

* TRIM - removes blank spaces from the end of lines in text files.

I think I just about covered the main ones.... i`m sure if I missed anything
important someone will have a go at me <g>

Bye,
Martin

|\/| _..__|_o._   /\_|_| o._  _   mart.atkins@--
|  |(_||  |_|| | /--\|_|<|| |_>            --bigfoot.com

CJRandall <col...@shieldwolf.demon.co.uk> ASCII art 22 Aug 1998 00:00 · permalink · report
In article <35d...@news.vossnet.net>, Martin Atkins
<zne...@ovtsbbg.pbz> writes
>.----- On Fri, 21 Aug 1998 11:38:01 +0300, Tero Lindeman posted:
>|Hi!
>|
>|I'm programming some utilities to help when creating ascii pictures. I
>|would like to know what programs are there already and what do you all
>|often need.
>'---------------------------
[][ something i'd find handy at times, would be a tool/function to draw
[][ straight and/or curved lines, from any point to any other point, at
[][ any angle and/or thickness, made entirely from ascii-characters of
[][ of the alt.ascii-art character set.

                                          |\\  \\  \\  \\  \\./
       ...............|......../          | \\  \\  \\  \\  \
       ...............|......./           |  \\  \\  \\  \\./
       ...............|....../            |\  \\  \\  \\  \
       ;;.......\.....|...../     .'   .' |\\  \\  \\  \\./
       ;;;;......\....|..../    .'  .'    | \\  \\  \\-'
       ;;;;;;.....\...|.../   .' .' _.-'  |  \\ _\`-'
       ;;;;;;;;....\..|../  .'.'_.-'       \_.-'
       ;;;;;;;;;;...\.|./ .'_.-'
                    .\|/_'__________
                    ../cjr
                    ./..
                   ./..

[][ fanxInAdvance? :)

[][ see yuz
[][ colin
-- 
( () /_ / /\)   _/   /? .\ /\) /) .\ /_ /_
CJRandall http://www.shieldwolf.demon.co.uk

In article <9J1...@shieldwolf.demon.co.uk>, CJRandall wrote:
>[][ something i'd find handy at times, would be a tool/function to draw
>[][ straight and/or curved lines, from any point to any other point, at
>[][ any angle and/or thickness, made entirely from ascii-characters of
>[][ of the alt.ascii-art character set.
>
>                                          |\\  \\  \\  \\  \\./
>       ...............|......../          | \\  \\  \\  \\  \
>       ...............|......./           |  \\  \\  \\  \\./
>       ...............|....../            |\  \\  \\  \\  \
>       ;;.......\.....|...../     .'   .' |\\  \\  \\  \\./
>       ;;;;......\....|..../    .'  .'    | \\  \\  \\-'
>       ;;;;;;.....\...|.../   .' .' _.-'  |  \\ _\`-'
>       ;;;;;;;;....\..|../  .'.'_.-'       \_.-'
>       ;;;;;;;;;;...\.|./ .'_.-'
>                    .\|/_'__________
>                    ../cjr
>                    ./..
>                   ./..

An attempt to line/curve algorithm.

We might consider the partition of a glyph area onto 8 parts

                               /~~0~~\/~~1~~\
                               \_____/\_____/
                               /~~2~~\/~~3~~\
                               \_____/\_____/
                               /~~4~~\/~~5~~\
                               \_____/\_____/
                               /~~6~~\/~~7~~\
                               \_____/\_____/

which are rectangular regions (contrary to this on a picture :).
The size of each particle should not be treated as constant because
of varies of aspect ratio and glyph sizes in various text modes.
But, we should assume that the height of each one is directly one :)
and scaling only the width

                              /| _|~   /~~~~~\
                               |  |_   \_____/

In general each particle should be coded as a bit in char. And the whole
picture space as char*. So we should have the class (i prefer C++ for such a
work). The advantage of such method should be possibility of inherience the
class which could do some other algorithms as zooming, resampling, noising,
denoising etc.

class Picture {
   int length;
   int X;
   int Y;
   unsigned char *table;
   double aspect_ratio;
 public:
   Picture(int x, int y, double ar) { 
	    X = x-1; Y = y-1;
            table = new char[length = (x+1)*(y+1)]; 
            aspect_ratio = ar;
            }
   ~Picture() { delete [] table; }
  
   double GetTrueX() { return double(X); }
   double GetTrueY() { return Y * aspect_ratio; }
   
   void Point(double x, double y);
   void Cls() { for (int i = 0; i < length; i++) table[i] = 0; }
   
   void Print();
};

Constructor Picture::Picture should allocate more memory than it seems to be
possible to give a margin space for a Picture::Print procedure. The generated
picture should be x x y but we should use margin spaces during glyph search.

Method Picture::Point 
We should determine which virtual screen particle should be lit (which bit
should be set) having coords and aspect_ratio.
       
Method Picture::Print
This is the core of all class :) First some remarks.
The line printing glyph should be decoded from Picture::table the
following way (i'll use = as 0 and * as 1)

*=                ==              ==              *=
==      =>  `     ==     =>  .    ==     =>  ,    =*     =>  )
==                **              =*              =*
==                ==              *=              *=

=*                ==              *=
==      =>  '     ==     =>  _    *=     =>  \
==                ==              =*
==                **              =*

**                **              =*
==     =>  ~      **     =>  "    =*     =>  /
==                ==              *=
==                ==              *=

==                ==              =*
**     =>  -      **     =>  =    *=     =>  (
==                **              *=
==                ==              =*


Each 2x4 part of virtual screen should be changed with this method with
some error value i.e. the number of bits which don't match. 
Using margins we should change the starting point (the top left point
of searching area (16 tries) to determine one with the smallest error.

Hope that it helps. So, let's start discussion.

Regards,
  Staszek

.----- On Sat, 22 Aug 1998 16:07:56 +0100, CJRandall posted:
|[][ something i'd find handy at times, would be a tool/function to draw
|[][ straight and/or curved lines, from any point to any other point, at
|[][ any angle and/or thickness, made entirely from ascii-characters of
|[][ of the alt.ascii-art character set.
'---------------------

I tried that once. It didn`t work and I gave up.
Maybe someone else will have more luck (and patience) than me.

|\/| _..__|_o._   /\_|_| o._  _   mart.atkins@--
|  |(_||  |_|| | /--\|_|<|| |_>            --bigfoot.com

About this thread. These messages were posted publicly to the newsgroup alt.ascii-art in 1998 and are mirrored here unchanged as part of the Historic Archives – only email addresses are masked. The artwork and text belong to their original authors: if you copy a piece, keep the artist's initials or signature intact and credit them where you can. Are you one of the authors? Contact us to get your posts attributed, connected to your artist profile, or removed.

Report this message

Help us keep the archive clean and accurate. Reports are reviewed by a person – nothing is changed automatically.

Help classify this post